读取文本文件并随机化单词时出错

2024-04-19 06:07:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图访问一个文本文件和随机的话,但不断得到一个错误

import random

amazement_words = open("amazement_words.txt", "r")
WORDS = (amazement_words)
word = random.choice(amazement_words)
amazement_words.close()

Tags: importtxtclose错误randomopenwordwords
2条回答

amazement_words不是您可以发送给random模块中任何内容的内容。您需要读取该文件,将内容拆分为一个列表,然后对列表进行洗牌。此外,您的程序将没有输出,因为您不打印、写入文件或任何其他输出方法。行WORDS = (amazement_words)只是将该文件句柄分配给一个新名称(您不使用该名称)。最后,您可以使用with构造自动关闭文件

import random

with open('amazement_words.txt') as f:
    content = f.read().split()

random.shuffle(content)
print(*content)

您正在打开文件句柄,但从未实际读取内容:

import random
amazement_words = open("amazement_words.txt", "r") # open file
WORDS = amazement_words.read().split()             # read file contents and split on spaces
word = random.choice(WORDS)                        # pick random word
amazement_words.close()

为了好玩,这里有一句话:

rand_word = random.choice(open('your_file.txt').read().split())

相关问题 更多 >