zoukankan      html  css  js  c++  java
  • random模块

    random模块

    此模块提供了伪随机数获取相关的方法。

    • random.random():获取[0,1.0)范围内的浮点数
    >>> import random
    >>> random.random()
    0.8194962938698106
    
    • random.randint(a,b):获取[a,b]范围内的一个整数。
    >>> random.randint(1,3)
    1
    >>> random.randint(1,3)
    3
    
    # 1,2,3都能取到
    
    • random.uniform(a,b):获取[a,b)范围内的浮点数,如果b为小数,b也能取到。
    >>> random.uniform(1,1.00000001)
    1.0000000044938595
    
    
    • random.randrange(start,stop[,step]):获取[star,stop)之间的整数,可以指定步长
    print(random.randrange(1,4))
    # 获取[1,4)之间的整数,可以获取到1,2,3
    
    print(random.randrange(1,4,2))
    # 可以获取到1,3
    
    • random.choice(seq):从非空序列seq返回一个随机元素。如果seq为空,则报错。(常用)
    >>> li = [1,2,3,'a','b','c',[4,5,6]]
    >>> random.choice(li)
    [4, 5, 6]
    
    # 返回结果为列表内的一个随机元素
    
    • random.sample(x,k):从x中随机抽取k个数据,组成列表返回。
    >>> li = [1,2,3,'a','b','c',[4,5,6]]
    >>> random.sample(li,2)
    [[4, 5, 6], 3]
    
    
    # 取列表内随机两个元素,组成列表返回
    
    • random.shuffle(x):混洗。将参数指定的数据中的元素打乱,参数必须是可变的数据类型,操作的是原对象,没有返回值。
    >>> random.shuffle(li)
    >>> li
    [3, 1, 'c', [4, 5, 6], 'a', 'b', 2]
    
    • 应用:随机验证码。
    import random
    def make_code(size=6):
        res = ''
        for i in range(size):
            num = str(random.randint(0,9))	    # 随机产生一个整数
            st1 = chr(random.randint(65,90))	# 获取65-90之间的的整数,通过chr函数转换成大写字母
            st2 = chr(random.randint(97,122))	# 获取一个随机小写字母
            res += random.choice([num,st1,st2])	# 每次取得其中一个字符,与res累加
        return res
    
    print(make_code())
    
  • 相关阅读:
    MySQL-多条件拼接语句
    MongoDB-C#驱动基本操作
    MongoDB-C#驱动帮助
    MongoDB-权限配置
    MongoDB-安装
    C#_实用
    提高C#代码质量-规范
    C#_Express-ickd接口
    Eclipse背景颜色修改
    Java中可变长参数的方法
  • 原文地址:https://www.cnblogs.com/ChiRou/p/14269351.html
Copyright © 2011-2022 走看看