この質問は、「これは私の馬です」などの特定のテキストが存在する行番号を見つける方法に関するものですか?
テキストファイル:
this is my name
this is my address
this is my age
this is my horse
this is my book
this is my pc
私のコード:
with open ('test.txt', 'r') as infile:
?????
この質問は、「これは私の馬です」などの特定のテキストが存在する行番号を見つける方法に関するものですか?
テキストファイル:
this is my name
this is my address
this is my age
this is my horse
this is my book
this is my pc
私のコード:
with open ('test.txt', 'r') as infile:
?????
enumerate関数は、反復可能なもの (ファイル) に対して機能するため、使用します。
for line_number, line in enumerate(infile):
print line_number, line
s = "this is my horse"
with open ('test.txt', 'r') as infile:
print next(index for index, line in enumerate(infile, start=1) if line.strip() == s)
印刷し4
ます。
strip()
最後に改行文字を取り除くには、行に適用する必要があることに注意してください。
次のようなことができます。
with open ('test.txt', 'r') as infile:
data = infile.readlines()
for line, content in enumerate(data, start=1):
if content.strip() == 'this is my horse':
print line
あなたのファイルの場合、これは印刷されます:
4