文章目录
- 前言
- random常用方法
- random.random()
- random.uniform(a,b)
- random.randint(a,b)
- random.randrange([start], stop[, step])
- random.choice(sequence)
- random.shuffle(x,[random])
- random.sample(sequence,k)
前言
Python标准库中的random函数,可以生成随机浮点数、整数、字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据等。本文主要讲random模块下面相关函数random();uniform();randint();randrange();choice();shuffle();sample()的用法。
random常用方法
random.random()
用于生成一个0-1的随机浮点数:0<=n<1.0
import randoma = random.random()b = random.random()print(a,b)#输出:0.8713228475284301 0.5464131282918054
random.uniform(a,b)
用于生成一个指定范围内的随机浮点数,两个参数中,一个是上限,一个下限,位置可以互换。
import randoma = random.uniform(5,10)b = random.uniform(10,5)print(a,b)#输出:9.755038653608812 6.251824748657013
random.randint(a,b)
用于声场一个指定范围内的整数。其中,a是下限,b是上限,生成随机数n:a<=n<=b。
import randoma = random.randint(2,4)b = random.randint(1,10)print(a,b)#输出:4 4
random.randrange([start], stop[, step])
从指定范围中,按指定基数递增的集合中获取一个随机数,参数必须为整数。start默认为0,step默认为1,所以,单个参数时,最小是1,不然会报错。
import randoma = random.randrange(4)#随机取1-4之间一个整数。b = random.randrange(1,10,2) #随机取1-10间的奇数。c = random.randrange(1,101,2) #随机取1-100间的偶数。等价于random.choice(range(1,101,2))print(a,b,c)#输出:2 5 24
random.choice(sequence)
从序列中获取 一个随机元素,参数sequence表示一个有序类型,泛指一系列类型,如list,tuple,字符串。
import randomlist1=['a','b','c']tuple1=(1,2,"hello")str1="hello world"print(random.choice(list1))print(random.choice(tuple1))print(random.choice(str1))# 输出:# b# hello# l
random.shuffle(x,[random])
用于将一个列表中的元素打乱,即将列表中的元素随机排列。
import randomlist1=['a','b','c']random.shuffle(list1)print(list1)#输出:['b', 'c', 'a']
random.sample(sequence,k)
指从指定序列中随机获取指定长度的片段。sample函数不会修改原有的序列。
import randomlist1=['a','b','c']slice1=random.sample(list1,2)print(list1)print(slice1)# 输出:# ['a', 'b', 'c']# ['a', 'c']