0

特定のキーワードを含む行を印刷しようとしていますが、印刷するには両方が同じ行にある必要があります。

これが私が問題に取り組んだ方法です。2つの変数を作成し、それらに変数を割り当てました。それらの1つはファイル名であり、プログラムがリストを繰り返すたびに変更されます。

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)

しかし、それはこれまで何の結果ももたらしませんでした。そこで、最初の方法に切り替えました。

4

2 に答える 2

5

多分:

if dir_key in lines and files in lines:

dir_keyが文字列の場合、テストif dir_key:は空の文字列でないTrue限り行われます。dir_keyしたがって、合計テストはおそらく次のようになりますif True and (files in lines):

于 2012-07-13T14:03:17.010 に答える
2

あなたが今持っているのは、の真実性をチェックすることでありdir_key、それdir_keyはにありませんlines。変化する

if dir_key and files in lines:
#to
if dir_key in lines and files in lines:
于 2012-07-13T14:03:27.550 に答える