2016-07-31 3 views
-1

Я пытаюсь написать программу, которая читает содержимое файла, ищет файл строки за строкой и, когда происходят определенные строки, возвращает мне эту строку на мой экран.Распечатайте строку вхождения слова в файл

Я преуспел, когда это только одна строка, которую я ищу. То, что я пытаюсь сейчас, когда я говорю, Python, чтобы искать число строк, и когда один из них происходит в файле, он выводит мне эту строку

import urllib2 
file = urllib2.urlopen("http://helloworldbook2.com/data/message.txt") 
message = file.read() 
#print message 

# Saves the content of the URL in a file 
temp_output = open("tempfile.txt", "w") 
temp_output.write(message) 
temp_output.close() 

# Displays the line where a certain word occurs 
wordline = [line for line in message.split('\n') if ("enjoying" or "internet") in line] 
line = wordline[0] 
print line 

Так что моя проблема является («наслаждаться» или «Интернет»).

Спасибо!

+0

[Ответ] (http://stackoverflow.com/a/3271485/3697202) может иметь решение, которое вы ищете. –

+0

Да, это действительно решило мою проблему! Благодаря! – Khaled

ответ

0

Этот синтаксис не хорошо:

if ("enjoying" or "internet") 

Вместо этого, вы можете использовать any или all:

words = ["enjoying", "internet"] 
if all(x in line for x in words) 
Смежные вопросы