此代码不起作用:我试图在两个列表中获取csv文件的两列

e1xvtsh3  于 2023-07-31  发布在  其他
关注(0)|答案(1)|浏览(114)

我试图在两个不同的列表中获得csv文件的两列。该方法适用于一个列表,但当我试图以同样的方式创建另一个for循环时,它的行为不同。我的代码出了什么问题

import csv
with open('matplotlibexperiments\Weather Data in India from 1901 to 2017.csv') as file:
    csvreader=csv.reader(file)
   
    header_row=next(csvreader)
    years=[]
    julytemp=[]   

    for column in csvreader:
       
        years.append(column[1])
        pass
       
    for c in csvreader:
        julytemp.append(c[7])
    print(julytemp)

字符串
csv文件是enter image description here
我试图让循环嵌套,希望它能工作,但它不能。如果没有嵌套,它只打印一个列表,如果嵌套,则打印另一个列表。

50few1ms

50few1ms1#

作为迭代器的csv.reader(file)在一次完整的迭代后耗尽,因此第二次它已经是“空”的。
你可以在一个周期内填写这两个列表

import csv
with open('matplotlibexperiments\Weather Data in India from 1901 to 2017.csv') as file:
    csvreader=csv.reader(file)
   
    header_row=next(csvreader)
    years=[]
    julytemp=[]   

    for column in csvreader:
        years.append(column[1])
        julytemp.append(column[7])

字符串

相关问题