random模块
import random
# 浮点数
random.randon() # 0< 随机浮点数 < 1
random.uniform(1,3) # 1< 随机浮点数 < 3
# 整数
random.randint(1,10) # 1<= 随机整数 <=10
random.radrange(1,10) # 1<= 随机整数 < 10
# 可迭代对象
random.choice( 可迭代对象 )
random.choice( [1,'aaa',[44,55]] ) # 随机取一个,取出来什么类型就是什么类型
# >>> 1 <class 'int'> / aaa <class 'str'> / [44, 55] <class 'list'>
# 抽奖活动
import random
random.choices( 可迭代对象,weights=设置每一个权重,k=取出几个数 )
print(random.choices([1, 2, 3, 4, 5, 6], weights=[98, 98, 98, 98, 98, 10], k=1))
# 6 概率为 10/500 0.02
random.sample( 可迭代对象, 选取个数 )
random.sample( [1,'aaa',333,444,555], 2 ) # 随机取两个,放入列表中
# >>> [1, 'aaa']
# 打乱顺序--'洗牌'
item = [1, 3, 4, 5, 6, 7, 8, 9]
random.shuffle(item)
print(item)
# >>> [6, 9, 7, 5, 8, 1, 4, 3]
案例:随机验证码
ASCII码
chr(65) --->'A'
ord('A') ---> 65
import random
res= ''
for i in range(6):
26大写字母随机取一个 = chr( random.randint(65,90) )
10个数字随机取一个 = str( random.randint(0,9) )
随机字符 = random.choice([26大写字母随机取一个,10个数字随机取一个])
res += 随机字符
print(res)
# >>> W583Q7
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~