我正在从文本文件中读取行。在文本文件中,每行中只有一个单词。我可以从文件中读取和打印单词,但不是整行都打印出来。这个词分为两个。印刷文字的字母是混合的。
这是我的代码:
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
答案 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)))