有时候我们会需要大量数据来演示或者测试某些功能,但是可能无法获得这些数据,或者担心泄露信息而不想使用真实数据。这时,我们可以自己生成一些随机数据。

import random

import string

def getEmail():

# of course you can extend the following list

suffix = ['.com', '.org', '.net', '.cn']

characters = string.ascii_letters + string.digits + '_'

username = ''.join((random.choice(characters) for i in range(random.randint(6,12))))

domain = ''.join((random.choice(characters) for i in range(random.randint(3,6))))

return username + '@' + domain + random.choice(suffix)

def getTelNo():

return ''.join((str(random.randint(0,9)) for i in range(11)))

def getNameOrAddress(flag):

'''flag=1 means Name,

flag=0 meains Address'''

#[0x4e00, 0x9fa5] is the range of Chinese character code

start, end = 0x4e00, 0x9fa5

result = ''

#the length of most Chinese people's name is between 2 and 4

if flag==1:

rangestart, rangeend = 2, 5

#here suppose the address contains at most 30 Chinese Characters

elif flag==0:

rangestart, rangeend = 10, 30

else:

print('flag must be 1 or 0')

return

for i in range(rangestart, rangeend):

result += chr(random.randint(start, end))

return result

def getSex():

return random.choice(('男', '女'))

def getAge():

return str(random.randint(18,100))

def main(filename):

with open(filename, 'w', encoding='utf-8') as fp:

fp.write('Name,Sex,Age,TelNO,Address,Email\n')

#quickly generate information of 2000 persons

for i in range(2000):

name = getNameOrAddress(1)

sex = getSex()

age = getAge()

tel = getTelNo()

address = getNameOrAddress(0)

email = getEmail()

line = '{0},{1},{2},{3},{4},{5}\n'.format(name, sex, age, tel, address, email)

fp.write(line)

def output(filename):

with open(filename, 'r', encoding='utf-8') as fp:

for line in fp:

print(line.strip())

if __name__=='__main__':

filename = 'information.txt'

main(filename)

output(filename)

温馨提示:单击文章顶部作者名字旁边浅蓝色的“Python小屋”进入公众号,关注后可以查看更多内容!

欢迎转发给您的朋友,或许这正是Ta需要的知识!

Python生成大量随机人员信息相关推荐

  1. python生成大量随机信息,并保存到Excel文件中

    题目要求 生成大量随机信息1000条,(每条信息包括:姓名.性别.年龄.籍贯.电话号码.地址.电子邮件.数学成绩.英语成绩)统计分析数学成绩90分以上的人的性别.年龄.籍贯.尝试将上述随机生成信息写入 ...

  2. 用python生成各种随机分布图

    在学习生活中,我们经常性的发现有很多事物背后都有某种规律,而且,这种规律可能符合某种随机分布,比如:正态分布.对数正态分布.beta分布等等. 所以,了解某种分布对一些事物有更加深入的理解并能清楚的阐 ...

  3. python生成常用随机数字

    在python中,调用随机数模块的操作为import random: 1.生成一个0-1之间的随机浮点数.例: >>> print(random.random()) 0.787579 ...

  4. 你真的会用Python随机数种子吗——Python生成随机数随机种子“失效”:Jupyter中不同cell中生成的随机数不一致

    在Python中经常会生成很多随机数,例如Python自带的random库.科学计算库NumPy.深度学习框架PyTorch等都可以生成随机数. 同时为了固定生产的随机数.使得随机数生成可复现,很多时 ...

  5. python生成随机整数列表_python生成随机整数

    原博文 2019-10-08 11:09 − python生成随机不重复的整数,用random中的sample index = random.sample(range(0,10),10) 上面是生成不 ...

  6. python生成随机整数

    python生成随机不重复的整数,用random中的sample index = random.sample(range(0,10),10) 上面是生成不重复的10个从1~10的整数 python生成 ...

  7. python生成正态分布矩阵_使用Numpy生成正态分布数据

    如何使用Python生成正态分布的人员身高体重信息? 下面是生成的数据的分布情况,身高数据在各个区间大致呈正态分布. 对应的代码如下,先用pd.cut进行各个区间分桶,然后使用sort_index按照 ...

  8. python生成随机数random操作_Python random生成随机数示例

    代码中经常有一些生成随机数的需求.特意整理了一下Python中random模块的一些相关使用方法示例. python生成随机数 随机整数: >>> import random > ...

  9. python生成随机个人信息——python批量生成随机信息

    实验:python批量生成随机信息 这个实验很简单,直接上代码了~~ 一.常用汉字的Unicode编码   在unicode码中,汉字的范围是(0x4e00,0x9fbf),但是其中包含了很多生僻字或 ...

最新文章

  1. mysql java datetime_Java向mysql数据库插入datetime类型数据实例(精)
  2. mysql排序分页乱的_Mysql 排序分页混乱
  3. 【心随笔】叙述你成功完成一件事情的方法
  4. 计算机用语优秀怎么算,计算机专业用语
  5. 序列的卷积运算与相关运算——MATLAB
  6. Dropout与过拟合抑制
  7. c语言代码大全表解释_C语言解惑圈子更新(20191201)
  8. 非冯计算机的原理方法,计算机之父 冯诺依曼_非冯诺依曼计算机_冯诺依曼提出的原理(7)...
  9. VBA之FormulaR1C1属性
  10. 2023凉陌ChatGPT付费创作系统V4.6+功能强大/有后台
  11. 移动文件后图标变白解决方法
  12. nvme命令中prp_Linux nvme驱动分析之块设备层
  13. Python中的self,类中的self?
  14. cy7c68013 usb 开发经验
  15. 【VSCode】 VSCode配置LeetCode插件
  16. Python 习题练习
  17. 学习,更需要坚持和耐力
  18. 二次安装mysql时出现的问题及解决
  19. 音乐播放器歌词的逐字渲染效果
  20. 程序员揭秘:火爆朋友圈的左右脑年龄测试结果只是一个随机函数!

热门文章

  1. html语言的网页制作,HTML语言的网页制作技巧与方法
  2. php网上实训指导书,PHP网站开发技术-实训指导书2016吐血制作
  3. html内容权重计算,HTML CSS 选择器权重计算规则
  4. java过滤器解决乱码_[java]如何使用过滤器解决jsp乱码
  5. 计算机会计系统审计的内容包括什么,会计电算化系统审计.docx
  6. mysql通过存储过程批量造测试数据
  7. DBA警世录:备份重于一切
  8. Windows下检测文件的MD5值
  9. 采用Spring管理Bean和依赖注入
  10. 解决Android学习之ScollView嵌套ListView和GridView问题