import random
print(random.__all__)
'''
['Random', 'seed', 'random', 'uniform', 'randint', 'choice', 'sample', 'randrange',
'shuffle', 'normalvariate', 'lognormvariate', 'expovariate', 'vonmisesvariate', 'gammavariate',
'triangular', 'gauss', 'betavariate', 'paretovariate', 'weibullvariate', 'getstate', 'setstate',
'getrandbits', 'choices', 'SystemRandom']
通过random.__all__方法可以查看random下暴露的所有公用接口
'''
'''
random.seed()
我们调用 random.random() 生成随机数时,每一次生成的数都是随机的。但是,当我们预先使用 random.seed(x)
设定好种子之后,其中的 x 可以是任意数字,如10,这个时候,先调用它的情况下,使用 random() 生成的随机数将会
是同一个。
注意:seed()是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用该方法
'''
random.seed(10)
print(random.random())
random.seed(10)
print(random.random())
random.seed(10)
print(random.random())
# 结果:
# 0.5714025946899135
# 0.5714025946899135
# 0.5714025946899135
'''
random.random()
在[0.0,1.0]之间随机生成一个小数
'''
print(random.random())
print(random.random())
print(random.random())
print(random.random())
# 结果:
# 0.9428968560693625
# 0.29722536247737374
# 0.8524653225715761
# 0.8289171315902508
'''
random.uniform(a, b)
在[a,b]之间随机生成一个小数
'''
print(random.uniform(1,2))
print(random.uniform(1,2))
print(random.uniform(1,2))
print(random.uniform(1,2))
# 结果
# 1.4799312472227346
# 1.5328821576397136
# 1.9792617596932158
# 1.3905496608031487
'''
random.randint(a, b)
在[a, b]之间随机生成一个整数
'''
print(random.randint(1,10))
print(random.randint(1,10))
print(random.randint(1,10))
print(random.randint(1,10))
# 结果:
# 5
# 8
# 3
# 4
'''
getrandbits(k):
生成一个k比特长度的随机整数(按存储大小的要求获得随机整数)
'''
print(random.getrandbits(3))
# 结果:
# 6
'''
randrange(start,stop[,step])
生成一个[start,stop)之间以step为步数的随机整数 (按域、步长的要求获得随机整数)
'''
print(random.randrange(1, 10, 2))
print(random.randrange(1, 10, 2))
print(random.randrange(1, 10, 2))
# 结果:
# 3
# 9
# 5
'''
choice(seq)
从序列类型seq(如字符串,列表,元组)中随机返回一个元素(用于序列抽1签)
'''
l = [i for i in range(10)]
print(random.choice(l))
print(random.choice(l))
print(random.choice(l))
print(random.choice(l))
# 结果:
# 2
# 5
# 1
# 1
'''
shuffle(seq)
将序列类型seq中元素随机排序,返回打乱后序列,seq被改变(用于序列洗牌)
'''
l = [i for i in range(10)]
random.shuffle(l)
print(l)
random.shuffle(l)
print(l)
random.shuffle(l)
print(l)
# 结果:
# [1, 4, 6, 3, 9, 2, 0, 7, 8, 5]
# [8, 6, 2, 9, 7, 4, 5, 0, 1, 3]
# [7, 4, 3, 0, 9, 5, 1, 6, 2, 8]
'''
sample(seq,k)
从序列类型seq中选取k个元素,以列表类型返回(用于序列抽K签,存入列表)
'''
l = [i for i in range(10)]
print(random.sample(l, 5))
print(random.sample(l, 5))
print(random.sample(l, 5))
print(random.sample(l, 5))
# 结果:
# [1, 9, 6, 2, 8]
# [1, 0, 6, 7, 5]
# [8, 7, 0, 3, 4]
# [2, 1, 5, 0, 4]
python基础模块---random
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 前言:继续做adventure项目中,最近常用python和powerbi。转行时学习项目态度是“我只需要把项目过...
- random随机模块的用法及功能 例子:利用random模块随机生成四位大小写字母和数字组合的验证码,用户输入不分...
- 解题思路 1.明确项目目标2.分析过程,拆解项目3.逐步执行,代码实现 明确项目目标 分析项目,拆解过程 逐步执行...
- Warning小心:这个模块不可用作安全方面的防护,安全方面需要看 secrets 模块 以下代码摘自官网。 1....