将纯数字从文件转换为整数列表

时间:2013-11-20 08:19:25

标签: python list text

我有一个带有一些普通数字的文本文件,我希望它们在列表中作为整数 例如,我喜欢这个 299 314 427
转为此 list = [[299], [314], [427]]
我读了文本文件
with open('C:/...', 'r') as f:
masses= f.read()
然后我使用for循环和spectra.split(''),因为空格是唯一分隔整数的东西,但它只是分别列出每个数字

list = []   
masses.split(' ')  
for mass in masses:  
    list.append(mass)

结果是['2','9','9','','3',......] 我怎么能拆分它们并将它们列入清单呢?

1 个答案:

答案 0 :(得分:3)

使用列表理解:

>>> with open('FILEPATH') as f:
...     lst = [[int(n)] for n in f.read().split()]
... 
>>> lst
[[299], [314], [427]]

没有参数,str.split按连续的空格(空格,制表符,换行符,...)拆分字符串:

>>> 'a\t\tb\nc  d'.split()
['a', 'b', 'c', 'd']
>>> 'a\t\tb\nc  d'.split(' ')
['a\t\tb\nc', '', 'd']

不要将list用作变量名称。它会影响内置函数list