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)
相关推荐
科技苑8 小时前
Python简单网络爬虫教程
爬虫·python
Patrick在香港11 小时前
Claude Prompt 香港场景:公文里「今日」落在 6 个日历日上,「翌日」锚错了 5 天
python·自然语言处理·正则表达式·claude·数据清洗
YsyaaabB11 小时前
Python 数值分析
python
阿洛学长11 小时前
计算机二级 Python 基本操作题(15 分)真题笔记(0101 ~ 1903 全套)
python·pycharm
君顾111 小时前
上海24小时自助健身房系统开发实战指南:从架构设计到落地部署
java·开发语言·健身房
weixin1997010801612 小时前
[特殊字符]️《二手ERP对接电商平台的总体方案:统一数据模型 + 事件驱动 + 灰度上线6原则》(附Python源码)
大数据·python
香菜TTT12 小时前
大模型上下文协议(MCP):AI 应用的“USB-C”接口技术
开发语言·人工智能·经验分享
aramae12 小时前
模拟实现strlen()函数 (C语言)
c语言·开发语言·后端
滚雪球~12 小时前
量化交易 防止Windows电脑自动更新并重启
python·量化
jimy113 小时前
readelf 查看“派生类”的vtable符号
开发语言·c++