我有一份物品清单
ls=["John","Tanner",'Mary','Anna','25']
和文本文件:
V1 'John' 'blablablabla...'
V2 'Anna' 'blablablabla...'
V3 'Josh' 'blablablabla...'
V4 'Mary' 'blablablabla...'
V5 'Steven' 'blablablabla...'
我想在文本文件中搜索列表中的每一项,并保存包含该项的行。你知道吗
var=[]
with open('C:/Maryam/example/test.txt', 'r') as file:
for line in file:
for item in ls:
if item in line:
var.append(line)
var
输出已经如下所示:
[" V1 'John' 'blablablabla...'\n"," V2 'Anna' 'blablablabla...'\n",
" V4 'Mary' 'blablablabla...'\n"]
但我希望得到这样的结果:
[" V1 'John' 'blablablabla...'\n", 'NA' , " V2 'Anna' 'blablablabla...'\n",
" V4 'Mary' 'blablablabla...'\n", 'NA']
我试图在列表中生成'NA',但没有找到它。 我使用 对于文件中的行: 因为我想保存整行,包括特定的字符串。有没有办法使用正则表达式,这样我就可以去掉行上的for循环,然后保存整行。 非常感谢。你知道吗
我建议使用字典而不是列表,这样您就可以为要搜索的每个元素和相应的行存储一个条目(如果有的话,
NA
否则):您可以更改代码以检查在每一行中是否找到任何内容:
也可以使用“for break else”结构:
相关问题 更多 >
编程相关推荐