官方文档:https://docs.python.org/zh-cn/3/library/random.html
基本操作
生成0到1之间的小数
import random
randoms = random.random() # 随机产生一个0到1之间的小数
print(randoms)
# 0.08165171624547463
生成指定区间的小数
import random
randoms = random.uniform(1, 4) # 随机产生一个1到4之间的小数
print(randoms)
# 3.975361745195931
生成指定区间的整数
import random
randoms = random.randint(1, 9) # 随机产生一个1到9之间的整数(包含1和9)
print(randoms)
# 3
从数据随机抽取一个
import random
l = [1, 2, 3, 4, 5, 6, 7, 8, 9]
randoms = random.choice(l) # 随机抽取一个,
print(randoms)
# 4
从数据随机抽样(可以自定义个数)
import random
l = [1, 2, 3, 4, 5, 6, 7, 8, 9]
randoms = random.sample(l, 5) # 随机指定个数抽样,指定个数不能超过数据长度,否则报错
print(randoms)
# [8, 9, 5, 3, 2]
随机打乱数据集合
import random
l = [1, 2, 3, 4, 5, 6, 7, 8, 9]
random.shuffle(l) # 随机打乱一个数据集合
print(l)
# [2, 5, 9, 7, 8, 1, 4, 3, 6]
更多操作
笔试题
生成一个随机4位验证码,并且是数字或者大小写字母组合
# 写代码之前一定先理清大致思路
import random
def get_code(n):
# 定义一个空字符用于存储验证码
code = ''
# 1.先写一个固定产生五位的随机验证码(每一位都应该是三选一)
for i in range(n): # 括号内写几就会产生几位验证码
# 随机产生一个数字
random_int = str(random.randint(0, 9)) # 整型无法与字符串相加 所以转成字符串
# 随机产生一个小写字母
random_lower = chr(random.randint(97, 122)) # chr方法给数字 依据ASCII码返回对应的字符
# 随机产生一个大写字母
random_upper = chr(random.randint(65, 90))
# 三选一
temp = random.choice([random_int, random_lower, random_upper])
# 拼接字符串
code += temp
# print(code) # 最好不要是打印操作 而是返回值
return code
res = get_code(4) # 0xM0
res1 = get_code(10) # AoUWE4Kfqt