Python3 random模块

random模块

 

import random
print(random.random())          # 0-1之间的小数
print(random.uniform(1,5))      # 1-5之间的小数

print(random.randint(1,36))     # 随机整数
print(random.randrange(1,10,2)) # randrange()指定范围,仅取奇数
print(random.randrange(0,10,2)) # randrange()指定范围,仅取偶数

import random
lst = [12,3,4,5,6,7]
# 随机取列表中的元素
print(lst[random.randrange(len(lst))])  # 随机取列表的下标,再取元素
print(random.choice(lst))               # 简单方法,直接取

# 随机取列表中的2个元素
print(random.choice(lst),random.choice(lst))   # 会存在重复
print(random.choices(lst,k=2))   # 可以出现多个,但是容易重复
print(random.sample(lst,k=3))   # 可以出现多个,不会出现重复
# 同时,如果列表中存在列表或者其他对象的元素,也会整体取到,不会打散

 

# 顺序打散(洗牌)
import random
lst = [12,3,4,5,6,7]
random.shuffle(lst)  # 顺序打乱   洗牌
print(lst)
# 在此,集合已经不适用,集合已经序列化。
# 验证码,随机大写字母
import random
print(chr(random.randrange(65,91)))  # 先随机字母的ASCII码,再取字母


# 生成随机验证码
import random​
def v_code():​
    code = ''
    for i in range(5):​
        num=random.randint(0,9)
        alf=chr(random.randint(65,90))
        add=random.choice([num,alf])
        code="".join([code,str(add)])​
    return code
​
print(v_code())


# 生成随机验证码
def yzm():
    m = "23456789abcdefghjkmnpqrstuvwxyzABCDEFGHJKMNPQRSTUVWXYZ"
    msg = ""
    for i in range(4):
        msg += m[random.randint(0,54)]
    if msg.isdigit() or msg.isalpha():
        msg = yzm()
    return msg
code = yzm()
print(code)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值