【发布时间】:2017-11-19 19:04:33
【问题描述】:
我刚开始学习python。我需要将 csv 文件数据存储到元组列表中:元组表示每一行的值,列表存储所有行。 我遇到问题的功能是当我需要过滤列表时。基本上只创建符合条件的列表的副本。我已经成功地将所有元组附加到一个列表中,但是当我需要将元组附加到一个新列表中时,它不起作用。
def filterRecord():
global filtered
filtered = list()
try:
if int(elem[2])>= int(command[-1]): #the condition
#if I print(elem) here, all results are correct
filtered.append(tuple(elem)) #tuples do not add into the list
#len(filtered) is 0
except ValueError:
pass
def main():
infile = open('file.csv')
L = list()
for line in infile:
parseLine() #a function store each row into tuple
for line in stdin:
command = line.split() #process user input, multiple lines
for elem in L:
if command == 0:
filterRecord()
如果我运行它,程序没有响应。如果我强制停止它,回溯总是for line in stdin
另外,我不允许在这个程序中使用 csv 模块。
【问题讨论】:
-
过滤条件是什么?
-
@WillemVanOnsem 当 elem[2] 大于或等于用户输入的数字时
标签: python list csv append tuples