Python readlines()将行拆分为两行

时间:2016-11-08 18:29:02

标签: python python-3.x

我正在从文本文件中读取行。在文本文件中,每行中只有一个单词。我可以从文件中读取和打印单词,但不是整行都打印出来。这个词分为两个。印刷文字的字母是混合的。

这是我的代码:

import random
fruitlist = open('fruits.txt', 'r')

reading_line = fruitlist.readlines()
word = random.choice(reading_line)
mixed_word = ''.join(random.sample(word,len(word)))

print(mixed_word)

fruitlist.close()

如何在一行上显示一个单词?

编辑:

这是文本文件的内容:

pinapple    
pear    
strawberry    
cherry    
papaya  

脚本应该打印其中一个单词(其字母混合),如下所示:

erpa

(这相当于梨)

现在它显示如下:

erp  
a

1 个答案:

答案 0 :(得分:5)

这是因为你还在洗牌readlines或行迭代器包含在行中的行终止字符。使用strip()删除它们(或rstrip()

这样做(避免readlines BTW):

with open('fruits.txt', 'r') as fruitlist:
    reading_line = [x.strip() for x in fruitlist]
    word = random.choice(reading_line)
    mixed_word = ''.join(random.sample(word,len(word)))