我有一个带有一些纯数字的文本文件,我希望它们作为列表中的整数。
例如我想要这样299 314 427
转换成这个list = [[299], [314], [427]]
我读了文本文件with open('C:/...', 'r') as f:
masses= f.read()
然后我使用一个for循环和Spectrum.split(''),因为空格是唯一一个将整数分开的东西,但是它要分别列出每个数字
list = []
masses.split(' ')
for mass in masses:
list.append(mass)
结果是['2','9','9','','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
。