random模块

random模块

  • 定义:随机生成整数 / 小数 / 指定列表值某个元素

【一】随机生成小数

【1】默认区间的小数 区间0-1之间的小数

复制代码
import random
print(random.random())      # 0.5858839340258046

【2】指定区间 给定区间内的小数

复制代码
import random
print(random.uniform(4,8 ))     # 7.467665328012298

【二】随机生成整数

【1】指定区间的整数 给定区间内的整数

复制代码
import random
print(random.randint(1,10))     # 8

【2】随机区间内的奇偶数

复制代码
import random
print(random.randrange(1,20,2))     # 1,3,5
print(random.randrange(1,20,3))     # 2,4,6

【三】随机返回值

【1】返回一个元素

先创建一个可迭代类型

复制代码
num_list = [i for i in range(1, 10)]
num_list += ['a', 'b', 'c']
print(random.choice(num_list))      # 输出abc 或者数字

【2】一次性返回多个元素

(1)以列表的形式返回结果
复制代码
num_list = [i for i in range(1, 10)]
num_list += ['a', 'b', 'c']
print(random.choices(num_list))     # [4]
(2)以指定关键字 k 指定返回列表中的元素个数
复制代码
num_list = [i for i in range(1, 10)]
num_list += ['a', 'b', 'c']
print(random.choices(num_list, k=3))    # ['c', 4, 1]
print(random.choices(num_list, 3))      # 与上面一条命令结果一样,默认值就是k

【四】打乱顺序

random.shuffle()

复制代码
num_list = [i for i in range(1,10)]
print(num_list)             # [1, 2, 3, 4, 5, 6, 7, 8, 9]
random.shuffle(num_list)    # 打乱顺序
print(num_list)         # [2, 3, 1, 8, 6, 5, 4, 7, 9]
​

【五】随机生成验证码

  • 随机大小写字母 + 随机数字

  • chr(数字) ---> 返回指定ASCII码对应的字符

  • 做一个能生成6位的验证码

复制代码
import random

def v_code(n):
    code=''
    for i in range(n):
        random_int = str(random.randint(0, 9))      # 0~9之间的整数
        random_upper = chr(random.randint(65,90))   # A~Z的大写字母
        random_lower = chr(random.randint(97,122))  # a~z的小写字母
        temp = random.choice([random_int, random_upper, random_lower])
        code += temp
    return code

result = v_code(6)
print(result)
相关推荐
咕白m6251 小时前
用 Python 实现一键批量查找与替换 Excel 数据
后端·python
SelectDB18 小时前
Apache Doris Python UDF:让 SQL 直接调用 Python 生态,支撑 Agent 时代复杂业务逻辑
大数据·数据库·python
荣码1 天前
GraphRAG:普通RAG只能回答"点"的问题,我踩了4个坑才搞懂
java·python
金銀銅鐵2 天前
[Python] 基于欧几里得算法,实现分数约分计算器
python·数学
Lyn_Li2 天前
Kaggle Top 5 | 198只股票、200条数据的金融预测——BattleFin高分方案从零复现
python·kaggle·比赛复盘·金融预测
小九九的爸爸2 天前
前端想要入门Agent开发,要具备哪些Python基础?
python·agent·ai编程
阿耶同学2 天前
手把手教你用 LangGraph 搭建三层嵌套 Agent 架构
python·程序员
花酒锄作田3 天前
Pydantic校验配置文件
python
hboot3 天前
AI工程师第四课 - 深度学习入门
pytorch·python·神经网络
ZhengEnCi3 天前
P2M-Matplotlib折线图完全指南-从数据可视化到趋势分析的Python绘图利器
python·matlab·数据可视化