【发布时间】:2012-04-25 18:15:24
【问题描述】:
如果我有这个:
def oneFunction(lists):
category=random.choice(list(lists.keys()))
word=random.choice(lists[category])
def anotherFunction():
for letter in word: #problem is here
print("_",end=" ")
我之前已经定义了lists,所以oneFunction(lists) 可以完美运行。
我的问题是在第 6 行调用 word。我尝试在第一个函数之外使用相同的 word=random.choice(lists[category]) 定义定义 word,但这使得 word 始终相同,即使我调用 @987654328 @。
我希望能够在每次调用第一个函数和第二个函数时拥有不同的word。
我可以在不定义 word 之外的 oneFunction(lists) 的情况下执行此操作吗?
【问题讨论】:
-
为什么不将
word作为参数传递给anotherFunction?考虑def anotherFunction(word):并相应地调用它。