请用Python写一个大批量数据生成的代码脚本,要求姓名只能汉字2-3个字,电话只以1开头11位数,分数为1-9分。要求生成5000份资料的Excel文件
时间: 2024-06-11 13:09:56 浏览: 116
以下是一个示例代码,可以根据需求进行修改:
```python
import random
import xlwt
# 定义生成数据的函数
def generate_data(num):
data = []
for i in range(num):
name = ''.join(random.sample('赵钱孙李周吴郑王冯陈褚卫蒋沈韩杨朱秦尤许何吕施张孔曹严华金魏陶姜谢邹喻柏水窦章云苏潘葛奚范彭郎鲁韦昌马苗凤花方俞任袁柳酆鲍史唐费廉岑薛雷贺倪汤滕殷罗毕郝邬安常乐于时傅皮卞齐康伍余元卜顾孟平黄和穆萧尹姚邵湛汪祁毛禹狄米贝明臧计伏成戴谈宋茅庞熊纪舒屈项祝董梁杜阮蓝闵席季麻强贾路娄危江童颜郭梅盛林刁钟徐邱骆高夏蔡田樊胡凌霍虞万支柯昝管卢莫经房裘缪干解应宗丁宣贲邓郁单杭洪包诸左石崔吉钮龚程嵇邢滑裴陆荣翁荀羊於惠甄麴家封芮羿储靳汲邴糜松井段富巫乌焦巴弓牧隗山谷车侯宓蓬全郗班仰秋仲伊宫宁仇栾暴甘钭厉戎祖武符刘景詹束龙叶幸司韶郜黎蓟薄印宿白怀蒲邰从鄂索咸籍赖卓蔺屠蒙池乔阳郁胥能苍双闻莘党翟谭贡劳逄姬申扶堵冉宰郦雍却璩桑桂濮牛寿通边扈燕冀郏浦尚农温别庄晏柴瞿阎充慕连茹习宦艾鱼容向古易慎戈廖庾终暨居衡步都耿满弘匡国文寇广禄阙东欧殳沃利蔚越夔隆师巩厍聂晁勾敖融冷訾辛阚那简饶空曾毋沙乜养鞠须丰巢关蒯相查後荆红游竺权逯盖益桓公仉督子颛';
random.randint(2, 3)))
phone = '1' + ''.join(random.sample('0123456789', 10))
score = random.randint(1, 9)
data.append({'name': name, 'phone': phone, 'score': score})
return data
# 生成数据
data = generate_data(5000)
# 将数据写入Excel文件
workbook = xlwt.Workbook(encoding='utf-8')
worksheet = workbook.add_sheet('Data')
# 写入表头
worksheet.write(0, 0, '姓名')
worksheet.write(0, 1, '电话')
worksheet.write(0, 2, '分数')
# 写入数据
for i in range(len(data)):
worksheet.write(i+1, 0, data[i]['name'])
worksheet.write(i+1, 1, data[i]['phone'])
worksheet.write(i+1, 2, data[i]['score'])
# 保存Excel文件
workbook.save('data.xls')
```
该脚本会生成一个5000行的Excel文件,包含姓名、电话和分数三列数据。其中姓名随机生成2-3个汉字,电话是以1开头的11位数字,分数为1-9分。可以根据需要修改生成数据的规则和文件保存的路径和文件名。
阅读全文