2017-01-10 5 views
-1

У меня есть следующий код:Создание списка путем импорта файла .txt

myList = {"later", "test"} 
aList = []; 
tagCount = {} 

f = ["This is a test", "Call me later"] 

for line in f: 
#Get a separate line 
    fields = line.split(' ') 
    for word in fields: 
     if word in myList: 
      print(word) 

Это в основном проверяет, соответствует ли слово в слово в массиве ли одно слово слов в taglist. Он работает нормально. Однако я хотел бы заменить список myList теперь значением, которое я получаю из .txt-файла. Так что я делаю:

with open('taglist.txt') as f: 
    myList = [line.rstrip('\n') for line in f] 
    myList = set(myList) 

aList = []; 
tagCount = {} 

f = ["This is a test", "Call me later"] 

for line in f: 
#Get a separate line 
fields = line.split(' ') 
    for word in fields: 
    if word in myList: 
    print(word) 

Теперь это, похоже, не работает. Я предполагаю, что что-то пошло не так с импортом списка. Любые мысли о том, что здесь не так?

+1

'[line.rstrip ('\ п') для линии в f.readlines ()] ' – MMF

+0

@MMF' .readlines' не нужно. @Frits Verstraten Что именно «не работает»? – laike9m

+1

Надеюсь, у вас нет этого отступа, потому что это неверно –

ответ

1

Ваш код работает для меня, когда я вновь отступом его:

with open('taglist.txt') as tl: 
    myList = [line.rstrip('\n') for line in tl] 
    myList = set(myList) 

aList = []; 
tagCount = {} 

f = ["This is a test", "Call me later"] 

for line in f: 
#Get a separate line 
    fields = line.split(' ') 
    for word in fields: 
    if word in myList: 
     print(word) 

taglist.txt

later 
test 
+0

Да, но вы объявляете f позже в строке 9. f = ["Это тест", "Позвоните мне позже"]. Это также работает, когда прокомментируйте это? –

+0

Извините, что правильно, не удалось, когда f прокомментировал – CoderMike

+0

Это было правильно - ваш сбивающий код с помощью повторного использования f, но он работает – CoderMike

Смежные вопросы