我无法理解《用 Python 自动化无聊的东西》一书中的神奇 8 球程序。该程序基本上在列表中有一堆消息,然后使用 random.randint 方法随机选择其中一条消息。代码如下:
import random
messages = ['It is certain',
'It is decidedly so',
'Yes definitely',
'Reply hazy try again',
'Ask again later',
'Concentrate and ask again',
'My reply is no',
'Outlook not so good',
'Very doubtful']
print(messages[random.randint(0, len(messages) - 1)])
如您所见,这个程序相当简单。我的问题是关于最后一行。他为什么要从消息长度中减去 1? random.randint 方法不应该从所有消息中选择一些东西,而不仅仅是一些。有 9 条消息,但减去一条意味着只有 8 条消息通过 random.randint 方法。有人可以解释一下为什么他要从消息长度中减去 1 吗?
预先感谢您的回复!
请您参考如下方法:
Python 索引从 0 而不是 1 开始。如果列表中有 9 个条目,则需要 0-8 范围内的随机整数。
