我正在处理包含大量数据的CSV文件。每行包含格式如下所示的数据。
姓名,年龄,性别,出生年份
马克,18岁,男,1978年
玛丽,18岁,男,1980年
马库斯,18岁,男,1978年
此数据重复如此等等,适用于200行。我想知道的是有一种方法可以打开这个文件夹并阅读它,但只打印包含1978的行。我,e,对于上面的数据,它只会打印Mark和Marcus行。
到目前为止,这是我的代码。如何编辑它以实现我的目标。有可能吗?
f=open("Names.csv",'rU')
lines = f.readlines()
f.close()
for line in lines:
[x for x in lines if '1978' print x]
答案 0 :(得分:0)
with open("Names.csv") as fh:
for line in fh:
if '1978' in line:
print line
请注意,有一个标准的库模块来处理CSV文件,但出于您的目的,您似乎不需要任何这些;上面的代码片段应该这样做。但是,如果您的需求变得更加复杂,您可以通过将CSV读取为CSV而不是纯文本来帮助自己。
答案 1 :(得分:0)
指定列表理解的结果。
with open('Names.csv') as f:
lines = [line for lin in f if '1978' in line]