2013-06-21 4 views
0

У меня есть следующий текстовый файл:Преобразование текстового файла в список

"""[' Hoffa remains  Allen Iverson  Bill Cosby  WWE Payback results   Juneteenth shooting  Miss Utah flub  Octopus pants  Magna Carta Holy Grail  China supercomputer  Sibling bullying ']""" 

Я хотел бы создать список из него и применить функцию к каждому имени

это мой код до сих пор :

listing = open(fileName, 'r') 
lines = listing.read().split(',') 
for line in lines: 
    #Function 
+0

Вы разделите текст, используя ',' как разделитель, но он выглядит как шесть пространств или будет более подходящим для вашего файла. – ASGM

+2

Я не вижу никаких запятых в тексте ввода. Являются ли символы '' "" ['' буквально частью вашего входного файла? –

ответ

2

полоса из символов, как """['] первых с самого начала и конца строки с использованием str.strip, теперь разделить полученную строку в шесть пространствах (' '*6). Splitting возвращает список, но некоторые элементы все еще имеют traling и ведущие белые пробелы, вы можете удалить их, используя str.strip снова.

with open(fileName) as f: 
    lis = [x.strip() for x in f.read().strip('\'"[]').split(' '*6)] 
    print lis 
...  
['Hoffa remains', 'Allen Iverson', 'Bill Cosby', 'WWE Payback results', 'Juneteenth shooting', 'Miss Utah flub', 'Octopus pants', 'Magna Carta Holy Grail', 'China supercomputer', 'Sibling bullying'] 

Применение функции в приведенном выше списке:

Список понимания:

[func(x) for x in lis] 

карта:

map(func, lis) 
+0

Есть ли способ применить функцию к каждому имени сейчас? – user2493744

+0

@ user2493744 Да, вы можете использовать либо отображение карты, либо список. См. Мой обновленный ответ. –

1

Я бы первым отсылаю вас к некоторым другим аналогичным должностям: similar post

И вы не можете использовать кому здесь, у вас нет комы между данными, которые вы не хотите отделять. Эта функция разбивает строку, которая у вас есть на подстроку, в зависимости от разделителя, который вы ему дали: coma ','.

+0

это разобранный текстовый файл, который не даст мне запятой – user2493744

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