将文本文件转换为列表

时间:2013-06-21 14:27:49

标签: python list

我有以下文本文件:

"""['    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

2 个答案:

答案 0 :(得分:2)

首先使用"""[']从字符串的开头和结尾删除str.strip之类的字符,现在将结果字符串拆分为六个空格(' '*6)。拆分返回一个列表,但有些项目仍然有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)

答案 1 :(得分:1)

我首先会向您推荐其他类似帖子:similar post

你不能在这里使用昏迷,你不会在你想要分开的数据之间产生昏迷。此函数根据您给出的分隔符​​将您拥有的字符串拆分为子字符串:昏迷','。