【问题标题】:Repeating a for in line loop python重复 for 行内循环 python
【发布时间】:2017-01-15 00:12:12
【问题描述】:
我将如何重复此操作(不包括打开文件和设置变量)?
这是我在 python3 中的代码
file = ('file.csv','r')
count = 0 #counts number of times i was equal to 1
i = 0 #column number
for line in file:
line = line.split(",")
if line[i] == 1:
count = count + 1
i = i+1
【问题讨论】:
-
请阅读“How to Ask”,然后阅读edit您的问题,以便清楚您在问什么。向我们展示您尝试了什么、您的代码做了什么以及您希望它做什么。正如您从下面的黑暗答案中可以看出的那样,没有人知道您实际上在问什么。
标签:
python
list
python-3.x
csv
repeat
【解决方案1】:
如果我理解这个问题,试试这个并调整你想要的格式。将NUM_COLUMNS 替换为您希望它重复的次数
file = open('file.csv','r')
data = file.readlines()
for i in range(NUM_COLUMNS):
count = 0
for line in data:
line = line.split(",")
if line[i] == ("1"):
count = count + 1
print count
【解决方案2】:
以下函数将返回csv文件file_name中值为field_value的字段数,我认为您正在尝试这样做:
import csv
def get_count(file_name, field_value):
count = 0
with open(file_name) as f:
reader = csv.reader(f)
for row in reader:
count += row.count(field_value)
return count
print(get_count('file.csv', '1'))