我正在尝试打印包含特定关键字的行,并且它们都应位于同一行,以便打印出来。
这是我解决问题的方法,我制作了2个变量并为它们分配了变量。其中一个是文件名,每次程序迭代列表时都会更改。
for files in myfiles:
for lines in info:
if dir_key and files in lines:
print lines
else:
print "line not found"
这样可行,但问题是,它还会打印一行只包含文件名的行。我如何确保不这样做?我试过了
if line.beginswith(dir_key) and line.endswith(file)
但这并没有产生任何结果。所以我切换到第一种方法。
答案 0 :(得分:5)
也许:
if dir_key in lines and files in lines:
如果dir_key是一个字符串,那么只要if dir_key:
不是空字符串,测试True
就是dir_key
。所以你的总测试很可能等同于if True and (files in lines):
答案 1 :(得分:2)
您现在所拥有的是检查dir_key
的{{3}},而不是dir_key
lines
。变化
if dir_key and files in lines:
#to
if dir_key in lines and files in lines: