如何从列表生成唯一的随机数

时间:2019-09-28 08:16:56

标签: python list random unique

我知道我应该像下面的代码一样为随机数编写代码,但是我不知道如何生成唯一的数字,例如,我想一次从列表中生成3个唯一的电话号码,我该如何这样做吗?

import random  

# last numbers of the phone numbers are in order, 1,2,3,4,5,6
myList = [60165651, 60175652, 60156523, 60135354, 60159535, 60192326]  

for x in range(5): 
    print(random.choice(myList))

--------------------------------------------------- ------

另一个问题是,如果我在数字的开头放置零,则会出现错误:令牌无效!

例如:

myPhoneList = [060165651, 60175652, 60156523, 60135354, 60159535, 60192326]

1 个答案:

答案 0 :(得分:1)

使用random.sample

  

返回从总体中选择的k长度的唯一元素列表   顺序或集合。用于随机抽样而无需替换。

from random import sample

myList = [60165651, 60175652, 60156523, 60135354, 60159535, 60192326]  
print(sample(myList, 3))
# [60192326, 60165651, 60175652]