开发和测试过程中我们经常遇到需要随机数的场景,比如为了用户密码更安全我们有时会加入随机码,也就是将用户原密码连接上一串随机字符然后加密保存,又比如我们可能需要随机展示某张图片等等。这篇文章主要介绍了各种生成随机数的方法,主要用到了random模块。
# 1. 生成随机小数
# 2. 生成随机整数
# 3. 拿指定列表中数据生成随机数
# 4. 获取纯数字可重复随机数
# 5. 获取纯数字不可重复随机数
# 6. 获取数字和字母组合的随机数,可重复

# 7. 获取数字和字母组合的随机数,不可重复

以下是主要示例代码:

# -*- coding: utf-8 -*-
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
#作者:cacho_37967865
#博客:https://blog.csdn.net/sinat_37967865
#文件:randomData.py
#日期:2019-09-02
#备注:多种随机数生成方法
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''import random# 1. 生成随机小数
def get_random():data1 = random.random()data2 = random.uniform(0,1)print("随机大于0且小于1之间的小数:",data1)print("随机一个大于N小于M的小数:",data2)# 2. 生成随机整数
def get_randint():data1 = random.randint(1,5)data2 = random.randrange(1,10,2)data3 = random.randrange(2, 10, 2)print("随机一个大于等于1且小于等于5的整数:",data1)print("随机一个大于等于1且小于10之间的奇数,其中2表示递增基数:",data2)print("随机一个大于等于1且小于10之间的偶数,其中1表示递增基数:", data3)# 3. 拿指定列表中数据生成随机数
def get_fromList():list = ['123','abc',1,[1,2]]data1 = random.choice(list)data2 = random.sample(list,4)print("从列表随机选择数:",data1)print("从列表随机选择N个数:", data2)          # 拿出来的数不会重复,而且数量要小于等于列表长度random.shuffle(list)print("random.shuffle(list)打乱列表的顺序:", list)# 4. 获取纯数字可重复随机数
def get_verifyCode(n):codes = []for i in range(n):num = str(random.randint(0,9))codes.append(num)code = ''.join(codes)print("生成N位数的数字随机数,可重复:",code)return(code)# 5. 获取纯数字不可重复随机数
def get_difCode(n):codes = []for i in range(10):codes.append(str(i))code = random.sample(codes, n)code = ''.join(code)print("生成N位数的数字随机数,不可重复:",code)return(code)# 6. 获取数字和字母组合的随机数,可重复
def get_mixCode(n):codes = []temp_code = []for i in range(10):codes.append(str(i))for i in range(97,123):codes.append(chr(i))                           # 26个小写英文字母for i in range(97,123):codes.append(chr(i).upper())                   # 26个大写英文字母for i in range(n):n_code = random.choice(codes)temp_code.append(n_code)code = ''.join(temp_code)#print("生成N位数的数字随机数,可重复:",code)return(code)# 7. 获取数字和字母组合的随机数,不可重复
def get_mix_difCode(n):codes = []for i in range(10):codes.append(str(i))for i in range(97,123):codes.append(chr(i))                           # 26个小写英文字母for i in range(97,123):codes.append(chr(i).upper())                   # 26个大写英文字母code = random.sample(codes, n)code = ''.join(code)#print("生成N位数的数字随机数,不可重复:",code)return(code)if __name__ == '__main__':get_random()#get_randint()#get_fromList()#get_verifyCode(6)#get_difCode(6)#get_mixCode(6)

【Python】random模块生成多种类型随机数相关推荐

  1. python随机生成一组数据_使用Python random模块生成随机数据实例

    在本节中,我们将学习如何使用random模块(random)在Python中生成随机数和数据.该模块为各种分布(包括整数,浮点数(实数))实现了伪随机数生成器. 本文的目标: 以下是我们将在本文中介绍 ...

  2. python random库生成伯努利随机数的方法_Python使用random模块生成随机数操作实例详解...

    本文实例讲述了Python使用random模块生成随机数操作.分享给大家供大家参考,具体如下: 今天在用Python编写一个小程序时,要用到随机数,于是就在网上查了一下关于Python生成各种随机数的 ...

  3. Python中random模块生成随机数详解

    Python中random模块生成随机数详解 本文给大家汇总了一下在Python中random模块中最常用的生成随机数的方法,有需要的小伙伴可以参考下 Python中的random模块用于生成随机数. ...

  4. python生成50个随机数_Python内置random模块生成随机数的方法

    本文我们详细地介绍下两个模块关于生成随机序列的其他使用方法. 随机数参与的应用场景大家一定不会陌生,比如密码加盐时会在原密码上关联一串随机数,蒙特卡洛算法会通过随机数采样等等.Python内置的ran ...

  5. python产生随机数random.random_Python内置random模块生成随机数的方法

    本文我们详细地介绍下两个模块关于生成随机序列的其他使用方法. 随机数参与的应用场景大家一定不会陌生,比如密码加盐时会在原密码上关联一串随机数,蒙特卡洛算法会通过随机数采样等等.Python内置的ran ...

  6. python中的random模块_Python内置random模块生成随机数的方法

    本文我们详细地介绍下两个模块关于生成随机序列的其他使用方法. 随机数参与的应用场景大家一定不会陌生,比如密码加盐时会在原密码上关联一串随机数,蒙特卡洛算法会通过随机数采样等等.Python内置的ran ...

  7. Python中如何用random模块生成随机数并重现

    使用random模块生成随机数 Python广为人们喜爱的原因就是Python中有许许多多非常便捷的模块可供我们随意调用,在Python中我们可以通过调用random模块来生成一个伪随机数. --只有 ...

  8. python使用random模块生成随机数、实现随机乱序和随机抽样?

    如何使用random模块生成随机数.实现随机乱序和随机抽样? random.random()函数可以生成[0.0, 1.0)之间的随机浮点数. random.uniform(a, b)函数可以生成[a ...

  9. Python random 模块 - Python零基础入门教程

    目录 一.Python random 模块常用函数介绍 二.Python random 模块使用 三.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Pyt ...

最新文章

  1. 大厂面试录取通过率不到3%,我真是太太太难了......
  2. 图像识别 标注(annotation)的反向优化策略
  3. spark项目实战:电商分析平台之各个范围Session步长、访问时长占比统计(需求一)
  4. Java多对多关系示例
  5. 疫情按下快进键,电商抢占市场红利需可靠的助力
  6. c语言循环嵌套说课,C语言FOR循环说课稿.doc
  7. everything搭配什么软件_如果你在用Everything,那这个插件你一定会毫不犹豫就装上!...
  8. 供应商层次分析法判断矩阵(文末附软件)
  9. FFT蝶形算法,IFFT
  10. pano2VR只更换全景图片
  11. sketch软件_初学UI设计要学sketch软件吗?
  12. 印刷企业数字化建设时,如何让ERP与MES做到优势互补
  13. java.sql.SQLException: Incorrect string value: ‘\xE6\xB5\x8B\xE8\xAF\x95...‘ for column ‘xxx‘
  14. 完美实现笔记本在有线网卡连通时自动关闭wifi,有线网卡未连通时自动开启wifi
  15. 扇贝编程python无法退款_扇贝编程python学习笔记-基础篇1
  16. Java8 Stream:20+实际例子,玩转集合的筛选、归约、分组、聚合
  17. 自动驾驶AI也能像真人司机一样有性格吗?
  18. PayPay猪 文档中心
  19. 引擎师(引擎)“悠歌”回合文案释义
  20. MFC中使用CPropertySheet实现Tab Control

热门文章

  1. android js 代码混淆工具,好用的JS(Javascript)混淆加密工具-HDS JSObfuscator 2.14版
  2. 微信小程序服务器域名修改生效时间,微信小程序修改request合法域名不生效及解决方法...
  3. Jackson快速入门
  4. android 获取当前时间_js如何获取当前时间并显示
  5. java volatile lock_Java并发学习笔记 -- Java中的Lock、volatile、同步关键字
  6. gaf处理一维故障信号_【推荐文章】改进局部均值分解的齿轮箱复合故障特征提取...
  7. 网站需要数据库服务器吗,网站需要独立的服务器数据库吗
  8. 网络编程与分层协议设计:基于linux平台实现,网络编程与分层协议设计:基于Linux平台实现...
  9. (map)出现最多的数
  10. 欧几里得算法和扩展欧几里得算法详解