【问题标题】: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'))
    

    【讨论】:

      猜你喜欢
      • 2020-10-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-11
      • 2010-12-19
      • 1970-01-01
      • 2013-07-30
      相关资源
      最近更新 更多