python学习笔记之random模块

系统 370 0

目录

  • random模块
    • 圆周率计算

random模块

  • 产生随机数

                  
                    # 产生随机整数 有a和b两个参数作为变化范围
    print(random.randint(1,10))  # 从1到10
                  
                
  • 根据随机数种子产生随机小数

                  
                    # 设置固定随机种子后 就是假随机了,第一次结果永远固定
    random.seed(10)      # 设置随机数种子
    print(random.random())  # 取(0,1)之间的小数
    
    # 如果不自定义种子,则种子按照当前的时间来
    print(random.random())  # 取(0,1)之间的小数
                  
                
  • choice函数

                  
                    print(random.choice([1,1,2,3,4]))    # 通过choice函数选择列表中的一个数
                  
                
  • shuffle函数

                  
                    lt = [1,2,3,4]
    random.shuffle(lt)    # 通过shuffle函数打乱序列
    print(lt)
                  
                

使用时间模拟random随机数

          
            import time
time_ = time.time()
print(str(time_).split(".")[-1][-1])    # 使用切割时间尾数的最后一位做随机数
          
        

圆周率计算

  • 圆周率近似计算公式

                  
                    pi = 0
    k = 0
    while True:       # 使用公式取近似计算
      pi +=  (1/(16**k))* \
             (4/(8*k+1) - 2/(8*k+4) - 1/(8*k+5) - 1/(8*k+6))
      print(pi)
      k += 1
                  
                
  • 蒙特卡洛方法求圆周率

                  
                    import random
    count = 0
    for i in range(100000):
      x, y = random.random(), random.random() // 使用随机数方式撒点
        dist = pow(x ** 2 + y ** 2, 0.5)      // 重要公式
        if dist < 1:
          count += 1
    print(count / 100000 * 4)
                  
                


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请请扫描上面二维码支持博主1元、2元、5元等您想捐的金额吧,狠狠点击下面给点支持吧

发表我的评论
最新评论 总共0条评论