文字列をtxtファイルで検索しようとしています。ここにサンプルのtxtファイルがあります。私は働いています:Pythonを使用してテキストファイル内の行を検索します。
abc
def
ghi
centre
jkl
mno
pqr
123
456
私は、ファイル内の行と一致するようにしようとしていますし、一致が見つかった場合、一致をファイルに行を追加し、その後見つからない場合は、プログラムを終了:
私は次のコードを持っています:私の問題は、ファイル内で "abc"とマッチしようとすると正しく動作しますが、 "pqr"とマッチしようとすると言うと、ブロックも実行されます。
これまでのコードは以下のとおりです。
#!/usr/bin/python
new_data = raw_input("Enter txt:")
file_name = "test.txt"
with open(file_name, "r") as F:
data = F.readlines()
for num, line in enumerate(data, start=1):
if line.strip() == new_data:
print "exists {} {}".format(new_data, num)
break
if line.strip() != new_data:
print "new data {} to be entered into line {}".format(new_data, num)
else:
print "break"
後、私は、ファイルから「123」と言うと一致しようとした場合、私が得る出力がされます。
Enter txt:123
new data 123 to be entered into line 1
new data 123 to be entered into line 2
new data 123 to be entered into line 3
new data 123 to be entered into line 4
new data 123 to be entered into line 5
new data 123 to be entered into line 6
new data 123 to be entered into line 7
exists 123 8
new data to be entered
希望を印刷するのだろうか? – frogcoder