zoukankan      html  css  js  c++  java
  • 032 random

    • random 是伪随机
    >>> import random  # 下面的例子就不重复这个导入操作了
    >>> 
    

    random.random()

    • 返回值:[0, 1)
    >>> random.random()
    0.32777843950175867
    >>> random.random()
    0.6195138047287055
    >>> 
    

    random.choice()

    • 格式:random.choice(非空序列)
    • 返回值:序列中的某个值
    >>> lst = [i for i in range(10)]
    >>> lst
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    >>> random.choice(lst)
    4
    >>> random.choice(lst)
    2
    >>> 
    

    random.shuffle()

    • 功能:随机打乱列表
    • 格式:random.shuffle(列表)
    • 返回值:打乱顺序之后的列表
    >>> lst
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    >>> random.shuffle(lst)
    >>> lst
    [7, 6, 0, 5, 9, 4, 1, 2, 3, 8]
    >>> random.shuffle(lst)
    >>> lst
    [9, 6, 4, 3, 2, 0, 8, 1, 7, 5]
    >>> 
    

    random.randint()

    • 格式:random.randint(a, b)
    • 返回值:[a, b]
    >>> random.randint(1, 100)
    26
    >>> random.randint(1, 100)
    100
    >>> 
    

    random.randrange()

    • 格式:random.randrange(a, b)
    • 返回值:[a, b)
    • 其实,randint 就是调用了 randrange
    def randint(self, a, b):
        """Return random integer in range [a, b], including both end points.
        """
    
        return self.randrange(a, b + 1)
    
    >>> random.randrange(1, 100)
    17
    >>> random.randrange(1, 100)
    37
    >>> 
    

    造个轮子

    • 其实这个轮子在 Js 中造过
      • Js 中的 Math.random() 返回一个 [0, 1) 的小数
      • 想要一个 [a, b] 的整数,需要手动封装
    • 这回用 Python3 造一个
    def random_test(start: int, stop: int) -> int:
        """ 此函数不考虑输入错误的情况 """
        return int(random.random() * (stop - start + 1)) + start
    
    
    print(random_test(1, 6))
    
  • 相关阅读:
    游千佛塔有感
    时刻坚持高标准:成大事者的十条“箴言”
    谁愿意嫁给我这样的人
    成功的秘诀之一,就是敢于提出大设想、大思考
    寒冬里的暖阳
    世界最伟大的管理原则
    把你藏在心里
    登天门有感
    办公室保持最佳状态的诀窍
    “领悟”的价值是什么?思维能力训练问答
  • 原文地址:https://www.cnblogs.com/yorkyu/p/12051126.html
Copyright © 2011-2022 走看看