Python - len(x) 不计算参数?



我正在编写一个游戏,如果用户提供了一个单词,游戏就会使用这个单词。否则,程序应该从字典中随机选择一个单词。字典是一个全局列表。目前,默认的随机数将始终计算为0,但在其他任何位置都可以正确计算。

代码:

 def game(i = random.randint(0, len(dictionary))):
    print 'default random:', i
    print 'random inside function:', random.randint(0, len(dictionary))

输出:

default random: 0
random inside function: 40403

Python不能在参数内部评估len吗?

如果你对随机数生成器说"从0-100中选择一个数字",它选择0并不意味着随机数库被破坏。Python评估了函数签名中的语句。

上面代码中的所有内容都和您期望的一样工作。http://dilbert.com/strip/2001-10-25

最新更新