Python3实现随机数

random是用于生成随机数的,我们可以利用它随机生成数字或者选择字符串。

random.seed(x)改变随机数生成器的种子seed。

一般不必特别去设定seed,Python会自动选择seed。

random.random() 用于生成一个随机浮点数n,0 <= n < 1

random.uniform(a,b) 用于生成一个指定范围内的随机浮点数,生成的随机整数a<=n<=b;

random.randint(a,b) 用于生成一个指定范围内的整数,a为下限,b为上限,生成的随机整数a<=n<=b;若a=b,则n=a;若a>b,报错

random.randrange([start], stop [,step])从指定范围[start,stop)内,按指定基数递增的集合中获取一个随机数,基数缺省值为1

random.choice(sequence)从序列中获取一个随机元素,参数sequence表示一个有序类型,并不是一种特定类型,泛指list,tuple,字符串等

random.shuffle(x[,random]) 用于将一个列表中的元素打乱(洗牌),会改变原始列表

random.sample(sequence,k) 从指定序列中随机获取k个元素作为一个片段返回,不会改变原有序列

但是,有一点需要注意:Python random是伪随机数。

那么,可以借用python random实现真随机数吗?答案是No。所谓真随机数,是要求根据绝对随机事件产生的数,也就是说要求要有一个无因果关系的随机事件,那么,这玩意只存在与哲学领域……

目前的随机数产生都是统计上的随机,因为随机源都是自然事件,顶天了算是混沌变量,绝对的无因果大概是不存在的。

不过统计随机基本上都够用了吧……

还是老老实实的用random模块吧….

代码演示

import random

#随机整数

import string

print(random.randint(0,99))

#随机选取0到100间的偶数

print(random.randrange(0, 101, 2))

#随机浮点数

print(random.random())

print(random.uniform(1, 10))

#随机字符

print(random.choice('abcdefg%^*f'))

#多个字符中选取特定数量的字符

print(random.sample('abcdefghij',3))

#多个字符中选取特定数量的字符组成新字符串

# print(string.join(random.sample(['a','b','c','d','e','f','g','h','i','j'], 3)).replace(" ",""))

#随机选取字符串

print(random.choice ( ['apple', 'pear', 'peach', 'orange', 'lemon'] ))

#洗牌

items = [1, 2, 3, 4, 5, 6]

random.shuffle(items)

print("洗牌:", items)

#从指定序列中随机获取k个元素作为一个片段返回,不会改变原有序列

list = []

list = random.sample(items,2)

print(list)

结果

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

本文标题: Python 实现随机数详解及实例代码

本文地址: http://www.cppcns.com/jiaoben/python/187618.html

python随机数程序源码_Python 实现随机数详解及实例代码相关推荐

  1. python支付程序源码_python项目中实现支付宝网页支付

    支付流程 在一次项目中需要引入支付宝接口实现支付宝支付,使用场景如下: 用户在我方商户系统中选择了购买商品,我方商户系统生成一张支付订单,用户点击订单的支付按钮后,页面会跳转到一个支付二维码的界面. ...

  2. python支付程序源码_Python提取支付宝和微信支付二维码的示例代码

    支付宝或者微信支付导出的收款二维码,除了二维码部分,还有很大一块背景图案,例如下面就是微信支付的收款二维码: 有时候我们仅仅只想要图片中间的方形二维码部分,为了提取出中间部分,我们可以使用图片处理软件 ...

  3. java程序日期转换_Java 日期转换详解及实例代码

    Java 日期转换 涉及的核心类:Date类.SimpleDateFormat类.Calendar类 一. Date型与long型 Date型转换为long型 Date date = new Date ...

  4. Xposed源码剖析——app_process作用详解

    Xposed源码剖析--app_process作用详解 首先吐槽一下CSDN的改版吧,发表这篇文章之前其实我已经将此篇文章写过了两三次了.就是发表不成功.而且CSDN将我的文章草稿也一带>删除掉 ...

  5. mysql data文件夹恢复_【专注】Zabbix源码安装教程—步骤详解(2)安装并配置mysql...

    四.安装并配置mysql(1) 解压mysql-5.7.26.tar.gz与boost_1_59_0.tar.gz #tar -xvf mysql-5.7.26.tar.gz #tar -xvf bo ...

  6. php+mysql案例含源码_【专注】Zabbix源码安装教程—步骤详解(1)安装前准备

    一.实验环境准备 Rhel 7.6 x86_64(server) 192.168.163.72 Rhel 6.5 x86_64(agent) 192.168.163.61 均已配置操作安装光盘为YUM ...

  7. React 源码系列 | React Context 详解

    目前来看 Context 是一个非常强大但是很多时候不会直接使用的 api.大多数项目不会直接使用 createContext 然后向下面传递数据,而是采用第三方库(react-redux). 想想项 ...

  8. python怎么表白源码_Python浪漫表白源码(附带详细教程)-Go语言中文社区

    要知道我们程序猿也是需要浪漫的,小博我之前在网上搜寻了很多代码,确发现好多都不是最新的,所以自己就整理了一下代码,现在与广大博友们分享下 我们需要用到的包 使用pip install +(包名) tu ...

  9. python爬网页源码_python爬虫爬取网页的内容和网页源码不同?

    可以看到这里id为k_total的元素值不同,爬出来是1,网页源码是55. 附还未完成的代码:import requests from bs4 import BeautifulSoup import ...

最新文章

  1. 特斯拉“撞死”机器人,是炒作还是事故?
  2. Hadoop命令学习
  3. JasperReports:棘手的部分
  4. 【maven】 在 MyEcplise上使用maven搭建Web项目
  5. Java优先级队列PriorityQueue
  6. Flex实现双轴条状图
  7. c++中queue用法
  8. Unity 和腾讯游戏成立联合创新实验室:从技术创新探索游戏产品新模式和概念
  9. 深度学习大神Hinton推翻自己30年的学术成果另造新世界
  10. Quartz使用总结(转)
  11. button组件 untiy_Unity自定义Button组件Transition
  12. 六款WEB上传组件性能测试与比较
  13. Mysql查询某列最长字符串记录
  14. TCS2010(中国标准编写模板)安装教程+解决三级标题条无法设置
  15. maya中英转换插件1.3 更新发布及教程
  16. mac mysql 没有my.cnf_mac下mysql配置my.cnf无效
  17. Paper intensive reading (二十五):Fecal Viral ...Virion-Enriched Metagenomics and Metatranscriptomics
  18. 推荐系统学习笔记之三 LFM (Latent Factor Model) 隐因子模型 + SVD (singular value decomposition) 奇异值分解
  19. UE4打包项目部署到Quest遇到的问题
  20. python 匿名回调函数_Python面试题之回调函数

热门文章

  1. 差分形式的牛顿插值公式(理论)
  2. pyqt5入门教程(二)
  3. matlab之矩阵基础应用
  4. 台式计算机风扇一直响,风扇一直响的原因是什么? 处理方法
  5. CentOS7——vi编辑保存
  6. 网站请求过程中的代号及意义
  7. Kinect+OpenNI学习笔记之12(简单手势所表示的数字的识别)
  8. Linux下的软raid实验一例
  9. 设计功能和界面测试用例一
  10. Julia程序设计3 数组2 排序、复制、集合运算、字典