如何将单行分成多行

时间:2013-02-18 02:20:12

标签: python

创建一个包含20个单词的测试文件。读取文件,然后插入回车符(\ n)并将测试写入一个新的文本文件,该文件将由四行五个单词组成。

这是我到目前为止所拥有的

my_file = open("twentywords.txt", "r")
temp_file = open("newfile.text", "w")

i = 1
for words in my_file:
    if i%5 == 0:
        print(words, file = temp_file)
    i = i + 1

我们还没有学过复杂的工具,所以保持简单Stew

3 个答案:

答案 0 :(得分:0)

使用.split()制作单词列表:

>>> 'This is a test'.split()
['This', 'is', 'a', 'test']

在没有参数的情况下调用.split()会使字符串被所有空白字符拆分。

从那里,你可以使用切片和.join()

>>> '-'.join(['This', 'is', 'a', 'test'])
'This-is-a-test'
>>> ['This', 'is', 'a', 'test'][1:3]
['is', 'a']

答案 1 :(得分:0)

以字符串形式读入整个文件。使用空格作为分隔符拆分字符串。将数组元素写入输出文件。在每个第五个元素处插入一个\ n。

答案 2 :(得分:0)


非常不可读,但是oneliner:

mystring = my_file.read()
print "\n".join(([" ".join(line) for line in  zip(*(iter(mystring.split()),) * 5)]))