python从另一个文件导入一个列表以随机选取



当我将列表复制并粘贴到文件中时,它成功地随机拾取,但不是从words.py文件中拾取。我必须与级联类型不匹配有关,因为它会给我一个错误

print('random word is ' + random.choice(example))
TypeError: can only concatenate str (not "dict") to str

这是我正在使用的代码。

import random
from words import words 
import string
print('random word is ' + random.choice(words))

这是字典的开头部分。它有5000多个单词。

words = [{"data":["aback","abaft","abandoned","abashed","aberrant","abhorrent","abiding","abject","ablaze","able","abnormal","aboard","aboriginal","abortive","abounding","abrasive","abrupt","absent","absorbed","absorbing","abstracted","absurd","abundant","abusive","accept","acceptable","accessible","accidental","account","accurate","achiever","acid","acidic","acoustic","acoustics","acrid","act"]}]

您正在将dict传递给random.choice。您需要传递"data"的列表:

print('random word is ' + random.choice(words[0]["data"]))

# Tiny example of words
words = [{"data": ["aback"]}]
>>> words[0]
{"data": ["aback"]}
>>> words[0]["data"]
["aback"]
>>> words[0]["data"][0]
"aback"

最新更新