Python生成随机数字/字符
文章目录
- random库
- 生成一个指定长度的随机字符串
- Faker库
- 生成不重复的数据
random库
random是python自带库,使用前导入 import random
即可,无需安装。
函数 | 说明 |
---|---|
random.random() | 生成一个[0, 1)的随机浮点数 |
random.uniform(a, b) | 生成一个[a, b)的随机浮点数 |
random.randint(a, b) | 生成一个[a, b]的随机整数 |
random.choice(series) | 从series序列中返回一个任意的元素,series可为字符串、列表、元组 |
random.sample(series, num) | 从series序列中返回任意num个元素组成的一个列表 |
random.shuffle(series) | 将列表中的所有元素打乱 |
random.randrange(a, b, step) | 返回[a, b)按指定递增基数step集合中的一个随机数 |
举例:
import randomprint(random.random()) # 0.8564557389763434
print(random.uniform(0, 100)) # 78.19630268831175
print(random.randint(0, 100)) # 45print(random.choice('12345')) # 4
print(random.choice([1,2,3,4,5])) # 1
print(random.choice((1,2,3,4,5))) # 5print(random.sample('12345', 3)) # ['1', '5', '2']
print(random.sample([1,2,3,4,5], 3)) # [5, 4, 1]
print(random.sample((1,2,3,4,5), 3)) # [4, 5, 1]list = [1, 2, 3, 4, 5]
random.shuffle(list)
print(list) # [3, 5, 4, 1, 2]print(random.randrange(0,20,5)) # 10
生成一个指定长度的随机字符串
使用random.randint(0,n)
思路:定义一个基础字符序列,要产生多长的字符串就循环调用多少次random.randint(0,n),n=基础字符序列的长度,在这个序列中选择随机位置的字符,然后进行拼接返回。import random import stringdef generate_random_str(randomlength=16):"""生成一个指定长度的随机字符串"""random_str =''# 使用string库中的字母、数字和标点符号组成一个基础字符序列base_str = string.ascii_letters + string.digits + string.punctuationlength =len(base_str) -1for i in range(randomlength):random_str +=base_str[random.randint(0, length)]return random_strprint(generate_random_str(30)) # T`^7:C?z4h0qd!JpO:MFNB2_GL>dXm
使用random.choice()随机选择
import random import stringdef generate_random_str(randomlength=16):"""生成一个指定长度的随机字符串"""# 使用string库中的字母、数字和标点符号拼接程序列str_list = [random.choice(string.ascii_letters + string.digits + string.punctuation) for i in range(randomlength)]random_str = ''.join(str_list)return random_strprint(generate_random_str(30)) # ')8D@Bu&\1ltf!}HUcI-.;^>Vy[n|V
使用random.simple()随机选择
import random import stringdef generate_random_str(randomlength=16):"""生成一个指定长度的随机字符串"""# 使用string库中的字母、数字和标点符号组成一个基础字符序列base_str = string.ascii_letters + string.digits + string.punctuationstr_lst = random.sample(base_str, randomlength) #randomlength<=lenth(base_str)random_str = ''.join(str_lst)return random_str
Faker库
使用Faker库可生成各种各样的伪数据(姓名、地址、邮箱、电话、密码、一段文字、一句话等)。
安装:pip install faker
导入:from faker import Faker
示例:
from faker import Faker
fk = Faker(locale='zh-Cn')# 姓名
print(fk.name()) # 刘娜
# 身份证
print(fk.ssn()) # 141022195412020845
# 手机号
print(fk.phone_number()) # 18226186826
# 邮箱
print(fk.email()) # zoujie@example.org
个人信息类
函数 说明 fk= Faker(‘zh_CN’) 默认生成的数据为为英文,使用zh_CN指定为中文 fk.name() 姓名 fk.ssn() 身份证 fk.phone_number() 手机号 fk.email() 邮箱 fk.credit_card_number() 银行卡号 fk.address() 带邮政编码的地址 fk.company() 公司名称 fk.job() 职称 fk.email() 邮箱 fk.profile() 档案信息 fk.simple_profile() 简单的档案信息 数字类
函数 说明 fk.numerify() 三位随机数字 fk.random_digit() 一位[0, 9]的随机数 fk.random_int() 一位[0, 9999]的随机数, 可设置[min, max] fk.random_number() 随机长度数字 文本、加密类
函数 说明 fk.random_element()
fk.random_letter()随机一位字母 fk.pystr() 随机长度字符串 fk.word() 随机一个词语 fk.sentence() 随机一个句子 fk.paragraph() 随机一个段落 fk.text() 随机一篇文章 fk.url() 随机url fk.md5() 随机生成md5 fk.password() 随机生成密码 日期类
函数 说明 fk.year() 年 fk.month() 月 fk.date() 日期:年月日 fk.past_date() 过去时间:年月日 fk.date_this_year() 当前年份:年月日 fk.future_date() 未来时间:年月日 fk.date_between(start_date=‘-3y’, end_date=‘+1y’) 自定义日期范围,3年前到1前后之间的 fk.date_time() 年月日 时分秒 fk.future_datetime() 未来时间:年月日 时分秒 fk.date_time_between(start_date=‘-3y’, end_date=‘+1y’) 自定义时间范围,3年前到1前后之间的 fk.time() 随机24小时时间 地理信息类
函数 说明 fk.country() 国家 fk.country_code() 国家编码 fk.province() 省份 fk.city() 城市 fk.district() 区 fk.postcode() 邮编
生成不重复的数据
from faker import Faker
fk = Faker(locale='zh-Cn')# 从[0,9]中随机获取7位数字(可重复)
print([fk.random_digit() for i in range(7)]) # [2, 0, 7, 8, 2, 3, 2]
# 从[0,9]中随机获取7位数字(不可重复)
print([fk.unique.random_digit() for i in range(7)]) # [4, 9, 3, 6, 8, 5, 2]
Python生成随机数字/字符相关推荐
- 【Excel】生成随机数字/字符
文章目录 常用函数 生成一个随机小写字母 生成一个随机大写字母 生成一个随机数字 生成随机一个数字或大小写字母 生成一个任意汉字 生成随机手机号 生成随机人名 常用函数 函数 说明 RAND() 生成 ...
- python生成随机数字
整数 random random.sample(range(0,10),10) #生成 [0-10),之间不重复的10个整数,不是小数 random.sample(range(0,30),10) np ...
- Python生成随机五位数——模仿手机验证码
使用Python生成随机的五位手机验证码. # -*- coding:utf-8 -*-#生成五位随机数,模仿手机验证码#导入random库,可以生成随机数 import randomdef ran( ...
- 用Python生成随机的中文验证码图片
大家都在 Python论坛里讨论.交流,你还在等什么!赶快加入! 在登录很多网站的时候,他们已经不在使用简单的英文和数字的验证码,为了防止恶心注册和群发软件的侵袭,现在都开始使用中文的验证码了. 今天 ...
- Linux生成随机数字和字符串
生成随机数字 使用系统的$RANDOM变量 > echo $RANDOM 14587 使用date +%s%N > date +%s%N 1529584024896587259 使用/de ...
- python生成随机数组_python3.x 生成3维随机数组实例
python3.x 生成3维随机数组实例 如下所示: import numpy as np a=np.random.randint(0,10,size=[3,3,3]) print(a) 以上这篇py ...
- python 生成随机图片
python numpy生成随机图 # -*- coding: utf-8 -*-import numpy as np import cv2grayImage=np.random.randint(0, ...
- mysql生成随机验证码_MySQL 生成随机数字、字符串、日期、验证码及 UUID的方法...
上一篇介绍了如何在 Oracle 生成随机数字.字符串.日期.验证码以及 UUID,今天我们继续讨论在 MySQL 中生成各种随机数据的方法.
- python生成随机整数
python生成随机不重复的整数,用random中的sample index = random.sample(range(0,10),10) 上面是生成不重复的10个从1~10的整数 python生成 ...
- Java生成随机数字和字母组合10位数
/** * java生成随机数字和字母组合10位数 * @param length[生成随机数的长度] * @ret ...
最新文章
- c语言eof_C语言 技能提升 系列文章(十)错误处理
- 科普扫盲,HTTP Status Code详解,从此排错无忧!
- mybatis的缓存机制是怎么样的?
- futuretask java 并发请求_Java并发编程:Callable、Future和FutureTask
- 对我国超级计算机的应用,要加强我国超级计算机应用人才储备
- [论文阅读] Multiple Instance Active Learning for Object Detection
- spring boot 配置启动后执行sql, 中文乱码
- matlab最小二乘法解超定方程,超定方程和最小二乘法
- pycharm专业版使用
- systrace学习笔记
- 【进阶】python写一个小猫
- 49个excel常用技巧(一)
- 我的世界android启动器,我的世界手机版启动器 安卓方块启动器教程
- python操作sqlite数据库
- 教你检查Mac电池的健康度
- 破解flowplayer
- 老司机的奇怪noip模拟T3-zhugeliang
- 最新流量卡官网介绍单页源码
- 永久免费开源在线客服系统推荐收藏
- 简单实用的批量去除水印方法及操作步骤
热门文章
- Linux C 函数参考(日期时间) 作者: 出处:hur.cn 更新时间: 2007年01月29日
- codewars练习(javascript)-2021/2/5
- Android生物识别
- 技巧篇 之 Just do it (这将会是一个漫长的历程。。。)
- 界面配色方案(转载)
- <数据结构> rear指针指向队尾元素 牺牲一个存储位置 的循环队列实现(C语言)(第4种/共6种)
- 陈省身文集51——闭黎曼流形高斯-博内公式的一个简单的内蕴证明
- 独家|撒谎不眨眼的“女乔布斯”和她的帝国覆灭记
- 最新PHP对接微信支付,发起商家转账API,商家转账到零钱
- 概率论之多元随机变量及其分布