random模块

random随机模块

Python的random模块提供了一系列的随机数生成函数。

import random

random:#

获取0-1之间的随机小数(左闭右开)

print(random.random())  # 输出:一个0-1之间的随机小数

randrange:#

随机获取指定范围内的整数(包含开始值,不包含结束值,间隔值)

print(random.randrange(3))  # 输出:0、1或2
print(random.randrange(3, 6))  # 输出:3、4或5
print(random.randrange(1, 9, 4))  # 输出:1或5
print(random.randrange(7, 3, -1))  # 输出:7、6、5或4

randint:#

随机产生指定范围内的随机整数

print(random.randint(1, 3))  # 输出:1、2或3

uniform:#

获取指定范围内的随机小数(左闭右开)

print(random.uniform(0, 2))  # 输出:一个0-2之间的随机小数
print(random.uniform(2, 0))  # 输出:一个0-2之间的随机小数
"""
源码解析
a = 2 , b = 0
return 2 + (0-2) * (0<=x<1)
x = 0 return 2 取到
x = 1 return 0 取不到
0 < x <= 2
return a + (b-a) * self.random()
"""

choice:#

随机获取序列中的值(多选一)

lst = ["孙凯喜", "王永飞", "于朝志", "须臾间", "含税小"]
print(random.choice(lst))  # 输出:列表中的一个随机元素


#源码解析
def mychoice(lst):
    index_num = random.randrange(len(lst))
    return lst[index_num]
print(mychoice(lst))

# 使用lambda表达式改造choice函数
mychoice = lambda lst : lst[random.randrange(len(lst))]
print(mychoice(lst))

sample#

随机获取序列中的值[返回列表]

tup = ("孙凯喜", "王永飞", "于朝志", "须臾间", "含税小")
print(random.sample(tup, 3))  # 输出:元组中的三个随机元素组成的列表

shuffle:#

随机打乱序列中的值(需要可以修改的)

lst = ["孙凯喜", "王永飞", "于朝志", "须臾间", "含税小"]
random.shuffle(lst)
print(lst)  # 输出:随机打乱的列表

生成四位随机验证码(包含大写字母、小写字母和数字)#

def yanzhengma():
    strvar = ""
    for i in range(4):
        b_c = chr(random.randrange(65, 91))  # 大写字母
        s_c = chr(random.randrange(97, 123))  # 小写字母
        num = str(random.randrange(10))  # 数字
        lst = [b_c, s_c, num]
        strvar += random.choice(lst)
    return strvar
print(yanzhengma())  # 输出:四位随机验证码
posted @   江寒雨  阅读(17)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
点击右上角即可分享
微信分享提示
主题色彩