小编nik*_*i_c的帖子

PYTHON - 查找数组中每10个整数的最大值

我有一个很大的整数数组,我需要在数组中将每10个整数及其对应的索引中的最大值打印为一对.

ex. (max_value, index of max_value in array)
Run Code Online (Sandbox Code Playgroud)

我可以在前10个整数中成功找到最大值和相应的索引,但是我在遍历整个数组时遇到问题.

我尝试过使用:

a = some array of integers

split = [a[i:i+10] for i in xrange(0, len(a), 10)] 

for i in split:
    j = max(i) 
    k = i.index(max(i))
    print (j,k)
Run Code Online (Sandbox Code Playgroud)

用这种方法的问题是,它分裂我的数组到10所以max_values是正确的块,但指标是不准确的(所有的指标都是0-10之间).我需要找到这样那并不是"的一种方式t将我的数组拆分成块,以便保留原始索引.我确信有一种更简单的循环方式来查找最大值,但我似乎无法弄明白.

python arrays xrange python-2.x

4
推荐指数
2
解决办法
791
查看次数

Python - 写入CSV文件和循环

编辑批准的答案是正确的,我的所有数据都出现在文件中,但由于它循环并将每条信息写入新行,因此数据无组织并以层叠模式显示.此时它只是一个格式化问题.有人遇到过类似的问题吗?

我有一个for循环,我在其中定义了多个变量.我需要将这些变量中的值打印到CSV,而不是一遍又一遍地写入行.我知道这个解决方案涉及在for循环之外放置"with open"语句,但是python不再识别我的变量.

我认为解决方案的另一部分是将数据附加到变量中,以便您可以在for循环之外调用它,但我不知道如何为我的情况执行此操作.

例:

for item in my_list:

    info  = inspect.getmembers(item)
    name = info[0]

import csv

with open("sample.csv", "w") as csvFile:
    fieldnames = ['Item Name']
    writer = csv.DictWriter(csvFile, fieldnames=fieldnames)

    writer.writeheader()
    writer.writerow({'Item Name': name })
csvFile.close()
Run Code Online (Sandbox Code Playgroud)

在此示例中,无法定义变量"name",因为它是在for循环中定义的.

python csv for-loop undefined-variable

2
推荐指数
1
解决办法
4253
查看次数

标签 统计

python ×2

arrays ×1

csv ×1

for-loop ×1

python-2.x ×1

undefined-variable ×1

xrange ×1