我的列表中有 3 个名字,我只想随机打印其中一个。我怎样才能使用 random.randint() 做到这一点jobs = [surgeon, soccer player, teacher]我只尝试编写random.randint(jobs),但出现了缺少位置参数 b 的错误,所以现在我迷路了。我只想用 randint 来做,因为我已经知道 random.choice()
2 回答
30秒到达战场
TA贡献1828条经验 获得超6个赞
random.randint接受两个参数a并b返回范围内(含)内的随机整数a...b。
您想要调用函数 wherea = 0和b = len(jobs) - 1以便该函数返回列表的随机索引。
>>> jobs = ['surgeon', 'soccer player', 'teacher']
>>> random.randint(0, len(jobs)-1)
1
>>> jobs[random.randint(0, len(jobs)-1)]
'teacher'
如果你想获得一个a...b不包含在内的随机整数,那么你可以使用random.randrange:
>>> jobs[random.randrange(0, len(jobs))]
'surgeon'
这还有一个额外的优点,即不需要第一个参数并假设下限为 0:
>>> jobs[random.randrange(len(jobs))]
'soccer player'
倚天杖
TA贡献1828条经验 获得超3个赞
random.choice()相反,你应该像这样使用:
>>> jobs = ['surgeon', 'soccer player', 'teacher']
>>> random.choice(jobs)
'soccer player'
添加回答
举报
0/150
提交
取消