读取文本文件并随机化单词

时间:2016-11-17 16:55:45

标签: python

我正在尝试访问文本文件并随机化这些单词,但不断收到错误。

import random

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

2 个答案:

答案 0 :(得分: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)

答案 1 :(得分:0)

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

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())