我的列表中有 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
提交
取消