一、随机整数
1.包含上下限:[a, b]
1
2
3
4
|
import random
#1、随机整数:包含上下限:[a, b]
for i in range(10): print(random.randint(0,5),end=" | ")
|
查看运行结果:
2.不包含上限:[a, b)
1
2
3
4
5
|
import random
#2.随机整数:不包含上限:[a, b)
for i in range(10): print(random.randrange(0,5),end=" | ")
|
查看运行结果:
3.随机选取指定范围内(指定基数)递增集合中的随机数
1
2
3
4
|
#3.随机选取指定范围内(指定基数)递增集合中的随机数
for i in range(10): print(random.randrange(0,10,2),end=" | ")
print()
for i in range(10): print(random.choice(range(0,10,2)),end=" | ")
|
查看运行结果:
二、随机浮点数
1. 0-1之间的随机浮点数:
1
2
|
#4 0-1之间的随机浮点数
for i in range(10): print(random.random())
|
查看运行结果:
2. 随机浮点数([a,b]上下限都包含;a<=b 或者 a>=b都可以)
1
2
3
4
|
#5.随机浮点数
for i in range(10): print(random.uniform(1,10),end="|")
print()
for i in range(10): print(random.uniform(10,1),end="|")
|
查看运行结果:
三、随机字符串
1.随机字符
random.choice从序列中获取一个随机元素。其函数原型为:random.choice(sequence)。参数sequence表示一个有序类型。这里要说明 一下:sequence在python不是一种特定的类型,而是泛指一系列的类型。list, tuple, 字符串都属于sequence
1
2
3
4
5
6
7
8
|
#6.随机字符
for i in range(10): print(random.choice('abcdefghijklmnopqrstuvwxyz!@#$%^&*()'),end="|")
print()
for i in range(10): print(random.choice("helloworld"),end="|")
print()
for i in range(10): print(random.choice(["python", "java", "c", "c++", "golang"]),end="|")
print()
for i in range(10): print(random.choice(("js", "python", "ruby")),end="|")
|
查看运行结果:
2.多个字符中生成指定数量的随机字符(返回数组格式)
1
2
|
#7.多个字符中生成指定数量的随机字符,返回数组格式
print(random.sample('abcdefghijklmnopqrstuvwxyz',5))
|
查看运行结果:
将以下的字符串进行拼接
1
2
|
str = ''.join(random.sample('abcdefghijklmnopqrstuvwxyz',5))
print(str)
|
查看运行结果:
四、随机数使用到的一些算法
1.均匀分布:均匀分布只在限定范围内,范围小,均匀分布
1
2
|
import random
print(random.uniform(1, 10))
|
查看运行结果:
2.正太分布:正态分布范围会更广,在均值处对称集中;
1
2
|
import random
print(random.gauss(5, 1)) #(均值为 5, 标准差为 1)
|
查看运行结果:
3.指数分布:是一种连续概率分布。指数分布可以用来表示独立随机事件发生的时间间隔
1
2
|
import random
print(random.expovariate(0.2))
|
查看运行结果:
|