我试图学习如何搜索csv文件。在这个例子中,我已经研究了如何搜索特定列(出生日期)以及如何搜索该列中的索引以获得出生年份。
我可以搜索超过特定年份 - 例如输入45将给我出生在1945年或之后的所有人,但我坚持的一点是,如果我输入一年没有特别在csv / list中我会得到一个错误,说年份不是在列表中(它不是)。
我想要做的是遍历列中的年份,直到找到列表中的下一年并打印任何大于此的内容。
我已经尝试了几次迭代,但我的大脑终于停止了。到目前为止,这是我的代码......
data=[]
with open("users.csv") as csvfile:
reader = csv.reader(csvfile)
for row in reader:
data.append(row)
print(data)
lookup = input("Please enter a year of birth to start at (eg 67): ")
#lookupint = int(lookup)
#searching column 3 eg [3]
#but also searching index 6-8 in column 3
#eg [6:8] being the year of birth within the DOB field
col3 = [x[3][6:8] for x in data]
#just to check if col3 is showing the right data
print(col3)
print ("test3")
#looks in column 3 for 'lookup' which is a string
#in the table
if lookup in col3: #can get rid of this
output = col3.index(lookup)
print (col3.index(lookup))
print("test2")
for k in range (0, len(col3)):
#looks for data that is equal or greater than YOB
if col3[k] >= lookup:
print(data[k])
提前致谢!