我对python还是很陌生,我已经看到类似的问题正在回答,但是我在理解它们时遇到了很多麻烦,所以我创建了一个新问题。
我将尝试根据需要提供尽可能多的上下文和代码。
因此,我尝试在.csv文件中搜索字符串/数字(我仅在第一列中进行搜索),如果找到它,我将让它抓取字符串/数字所在的整行位于。
(import csv was included)
input_string = input()
input_string_2 = input()
def search(x):
for row in (the .csv file):
if x == row[0]:
print (row)
return row
output_array = search(input_string)
output_array_2 = search(input_string_2)
这似乎与一个输入一起工作。但是,如果我尝试使用多个输入,则它只会遍历列表一次,这意味着有时我不会获得第二次搜索的结果。我问是否有人知道每次调用该函数时如何重新启动它。预先感谢。
请注意,执行此命令时我没有出现任何错误,因此,如果出现一些明显的拼写错误,可能就不是问题了。
编辑:发布的解决方案可能不够广泛,无法解决其他情况下的问题。
答案 0 :(得分:2)
您需要返回到文件的开头,否则将无任何内容可供阅读。
def search(x):
csv_file.seek(0)
for row in csv_file:
if x == row[0]:
print(row)
return row
答案 1 :(得分:0)
不确定这是否是您要寻找的东西:
def search(x):
y = []
for row in csv_file:
if x == row[0]:
print(row)
y.append(row)
return y