2015-12-02 213 views
-2

我试图让我的Raspberry Pi读取文本文件,然后将其转换为列表,如标题所示。该文本文件是一样的东西Python-如何读取文本文件并将其转换为列表形式的文本文件

0 122 122 0 124 0 0 0 0 0 0 155 

等... 无论如何,我希望它输出的文本文件转换为:

0 
122 
122 
0 
124 
0 
0 
0 
0 
0 
0 
155 

你能帮忙吗?

+7

你可以发布你的努力,是不是代码写作服务 – EdChum

+0

阅读中的所有线路,使用string.split(”“)与空间分割,然后遍历结果并打印或写入文件,并在末尾添加'\ n',这是新行字符。但正如EdChum所说的那样,你应该在SO上张贴时显示这些努力。 – cerkiewny

回答

1

类似下面应该为你工作:

with open('input.txt') as f_input, open('output.txt', 'w') as f_output: 
    for line in f_input: 
     f_output.write('\n'.join(line.strip().split())) 

这会从文件中读取input.txt行。对于每一行strip在最后删除换行符,然后split用于通过将空格字符分隔开来创建数字列表。最后,join命令将数字列表组合成单个字符串,每个数字都添加一个换行符。写入命令然后将该字符串写入输出文件。

此外,通过使用with命令,两个文件后自动关闭。

+0

因此,Python会打开输入文本文件。然后创建一个新的输出文本文件,然后,对于输入文件中的每一行,它会在输出文件中创建一个新行,对吧?那么它是如何知道这些数字是单个还是单个? –

+0

'split'命令创建一个数字列表。默认情况下,它会分割字符串中的空格。 –

0

这应该工作

handle = open("num.txt",'r') 
numbers = handle.read() 
mylist = numbers.split() 
print '\n'.join(mylist) 
相关问题