python制造虚拟姓名电话保存到mysql数据库

2024-04-09 18:12

本文主要是介绍python制造虚拟姓名电话保存到mysql数据库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

#启动命令:1、python test.py
import os
# 开始-需要安装的模块列表
#需要安装的库
libs = ["requests","mysql-connector-python"]
#循环遍历安装
for lib in libs:os.system("pip install -i https://pypi.tuna.tsinghua.edu.cn/simple  " + lib)# import
import mysql.connector
import random#生产名字和电话
def random_name():# 删减部分,比较大众化姓氏firstName = "赵钱孙李周吴郑王冯陈褚卫蒋沈韩杨朱秦尤许何吕施张孔曹严华金魏陶姜戚谢邹喻水云苏潘葛奚范彭郎鲁韦昌马苗凤花方俞任袁柳鲍史唐费岑薛雷贺倪汤滕殷罗毕郝邬安常乐于时傅卞齐康伍余元卜顾孟平" \"黄和穆萧尹姚邵湛汪祁毛禹狄米贝明臧计成戴宋茅庞熊纪舒屈项祝董粱杜阮席季麻强贾路娄危江童颜郭梅盛林刁钟徐邱骆高夏蔡田胡凌霍万柯卢莫房缪干解应宗丁宣邓郁单杭洪包诸左石崔吉" \"龚程邢滑裴陆荣翁荀羊甄家封芮储靳邴松井富乌焦巴弓牧隗山谷车侯伊宁仇祖武符刘景詹束龙叶幸司韶黎乔苍双闻莘劳逄姬冉宰桂牛寿通边燕冀尚农温庄晏瞿茹习鱼容向古戈终居衡步都耿满弘国文东殴沃曾关红游盖益桓公晋楚闫"# 百家姓中双姓氏firstName2 = "万俟司马上官欧阳夏侯诸葛闻人东方赫连皇甫尉迟公羊澹台公冶宗政濮阳淳于单于太叔申屠公孙仲孙轩辕令狐钟离宇文长孙慕容鲜于闾丘司徒司空亓官司寇仉督子颛孙端木巫马公西漆雕乐正壤驷公良拓跋夹谷宰父谷梁段干百里东郭南门呼延羊舌微生梁丘左丘东门西门南宫南宫"# 女孩名字girl = '秀娟英华慧巧美娜静淑惠珠翠雅芝玉萍红娥玲芬芳燕彩春菊兰凤洁梅琳素云莲真环雪荣爱妹霞香月莺媛艳瑞凡佳嘉琼勤珍贞莉桂娣叶璧璐娅琦晶妍茜秋珊莎锦黛青倩婷姣婉娴瑾颖露瑶怡婵雁蓓纨仪荷丹蓉眉君琴蕊薇菁梦岚苑婕馨瑗琰韵融园艺咏卿聪澜纯毓悦昭冰爽琬茗羽希宁欣飘育滢馥筠柔竹霭凝晓欢霄枫芸菲寒伊亚宜可姬舒影荔枝思丽'# 男孩名字boy = '伟刚勇毅俊峰强军平保东文辉力明永健世广志义兴良海山仁波宁贵福生龙元全国胜学祥才发武新利清飞彬富顺信子杰涛昌成康星光天达安岩中茂进林有坚和彪博诚先敬震振壮会思群豪心邦承乐绍功松善厚庆磊民友裕河哲江超浩亮政谦亨奇固之轮翰朗伯宏言若鸣朋斌梁栋维启克伦翔旭鹏泽晨辰士以建家致树炎德行时泰盛雄琛钧冠策腾楠榕风航弘'# 名name = '中笑贝凯歌易仁器义礼智信友上都卡被好无九加电金马钰玉忠孝'# 10%的机遇生成双数姓氏if random.choice(range(100)) > 10:firstName_name = firstName[random.choice(range(len(firstName)))]else:i = random.choice(range(len(firstName2)))firstName_name = firstName2[i:i + 2]sex = random.choice(range(2))name_1 = ""# 生成并返回一个名字if sex > 0:girl_name = girl[random.choice(range(len(girl)))]if random.choice(range(2)) > 0:name_1 = name[random.choice(range(len(name)))]return firstName_name + name_1 + girl_nameelse:boy_name = boy[random.choice(range(len(boy)))]if random.choice(range(2)) > 0:name_1 = name[random.choice(range(len(name)))]return firstName_name + name_1 + boy_namedef create_sfz():# 第二位数字second = [3, 4, 5, 7, 8][random.randint(0, 4)]# 第三位数字third = {3: random.randint(0, 9),4: [5, 7, 9][random.randint(0, 2)],5: [i for i in range(10) if i != 4][random.randint(0, 8)],7: [i for i in range(10) if i not in [4, 9]][random.randint(0, 7)],8: random.randint(0, 9),}[second]# 最后八位数字suffix = random.randint(9999999,100000000)suffix7 = random.randint(999999, 10000000)# 拼接手机号return "1{}{}{}{}".format(second, third, suffix,suffix7)def create_phone():# 第二位数字second = [3, 4, 5, 7, 8][random.randint(0, 4)]# 第三位数字third = {3: random.randint(0, 9),4: [5, 7, 9][random.randint(0, 2)],5: [i for i in range(10) if i != 4][random.randint(0, 8)],7: [i for i in range(10) if i not in [4, 9]][random.randint(0, 7)],8: random.randint(0, 9),}[second]# 最后八位数字suffix = random.randint(9999999,100000000)# 拼接手机号return "1{}{}{}".format(second, third, suffix)   #创建多个姓名、身份证号、与电话号码
# def create_nameAndIdCardAndPhoneNumber(length):
#     person_info_list = list()
#     for _ in range(length):
#         name = random_name()
#         id_card = create_sfz()
#         phone = create_phone()
#         person_info_list.append((name, id_card, phone))
#     return person_info_list# # 创建10个人的姓名、身份证号和电话号码
# persons = create_nameAndIdCardAndPhoneNumber(10)# # 打印个人信息
# for name, id_card, phone in persons:
#     print(f"name: {name}, idCard: {id_card}, phoneNumber: {phone}")#  开始----正式脚本
#1. 创建数据库连接
db = mysql.connector.connect(host="xxxx",  # MySQL服务器地址user="xxx",   # 用户名password="xxxx",  # 密码database="xxxxx"  # 数据库名称
)try:# 开启事务db.start_transaction() # 创建游标对象,用于执行SQL查询cursor = db.cursor()# 查询所有记录cursor.execute("SELECT id,grid_code,grid_name,head,head_phone FROM forestry_management.grid_data_management")# 获取查询结果results = cursor.fetchall()resultsLength = len(results)for row in results:id,grid_code,grid_name,head,head_phone = rowprint(f"id:{id},grid_code:{grid_code},grid_name:{grid_name},head:{head},head_phone:{head_phone}")name = random_name()id_card = create_sfz()phone = create_phone()sql = "update grid_data_management set head='%s',head_phone='%s' where id='%s'" % (name,phone,id)# 执行SQL语句cursor.execute(sql)print("Update data list,The number of results is %s" % (resultsLength));db.commit()  # 提交事务
except Exception as e:db.rollback()  # 事务回滚,撤销之前的操作print("Transaction rolled back:", e)
finally:# 关闭游标和数据库连接cursor.close() db.close()     print('end :completion of enforcement')

这篇关于python制造虚拟姓名电话保存到mysql数据库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/888875

相关文章

Python FastMCP构建MCP服务端与客户端的详细步骤

《PythonFastMCP构建MCP服务端与客户端的详细步骤》MCP(Multi-ClientProtocol)是一种用于构建可扩展服务的通信协议框架,本文将使用FastMCP搭建一个支持St... 目录简介环境准备服务端实现(server.py)客户端实现(client.py)运行效果扩展方向常见问题结

Mysql的主从同步/复制的原理分析

《Mysql的主从同步/复制的原理分析》:本文主要介绍Mysql的主从同步/复制的原理分析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录为什么要主从同步?mysql主从同步架构有哪些?Mysql主从复制的原理/整体流程级联复制架构为什么好?Mysql主从复制注意

详解如何使用Python构建从数据到文档的自动化工作流

《详解如何使用Python构建从数据到文档的自动化工作流》这篇文章将通过真实工作场景拆解,为大家展示如何用Python构建自动化工作流,让工具代替人力完成这些数字苦力活,感兴趣的小伙伴可以跟随小编一起... 目录一、Excel处理:从数据搬运工到智能分析师二、PDF处理:文档工厂的智能生产线三、邮件自动化:

Python实现自动化Word文档样式复制与内容生成

《Python实现自动化Word文档样式复制与内容生成》在办公自动化领域,高效处理Word文档的样式和内容复制是一个常见需求,本文将展示如何利用Python的python-docx库实现... 目录一、为什么需要自动化 Word 文档处理二、核心功能实现:样式与表格的深度复制1. 表格复制(含样式与内容)2

python获取cmd环境变量值的实现代码

《python获取cmd环境变量值的实现代码》:本文主要介绍在Python中获取命令行(cmd)环境变量的值,可以使用标准库中的os模块,需要的朋友可以参考下... 前言全局说明在执行py过程中,总要使用到系统环境变量一、说明1.1 环境:Windows 11 家庭版 24H2 26100.4061

Python中文件读取操作漏洞深度解析与防护指南

《Python中文件读取操作漏洞深度解析与防护指南》在Web应用开发中,文件操作是最基础也最危险的功能之一,这篇文章将全面剖析Python环境中常见的文件读取漏洞类型,成因及防护方案,感兴趣的小伙伴可... 目录引言一、静态资源处理中的路径穿越漏洞1.1 典型漏洞场景1.2 os.path.join()的陷

如何解决Druid线程池Cause:java.sql.SQLRecoverableException:IO错误:Socket read timed out的问题

《如何解决Druid线程池Cause:java.sql.SQLRecoverableException:IO错误:Socketreadtimedout的问题》:本文主要介绍解决Druid线程... 目录异常信息触发场景找到版本发布更新的说明从版本更新信息可以看到该默认逻辑已经去除总结异常信息触发场景复

Python数据分析与可视化的全面指南(从数据清洗到图表呈现)

《Python数据分析与可视化的全面指南(从数据清洗到图表呈现)》Python是数据分析与可视化领域中最受欢迎的编程语言之一,凭借其丰富的库和工具,Python能够帮助我们快速处理、分析数据并生成高质... 目录一、数据采集与初步探索二、数据清洗的七种武器1. 缺失值处理策略2. 异常值检测与修正3. 数据

Python中bisect_left 函数实现高效插入与有序列表管理

《Python中bisect_left函数实现高效插入与有序列表管理》Python的bisect_left函数通过二分查找高效定位有序列表插入位置,与bisect_right的区别在于处理重复元素时... 目录一、bisect_left 基本介绍1.1 函数定义1.2 核心功能二、bisect_left 与

MyBatis编写嵌套子查询的动态SQL实践详解

《MyBatis编写嵌套子查询的动态SQL实践详解》在Java生态中,MyBatis作为一款优秀的ORM框架,广泛应用于数据库操作,本文将深入探讨如何在MyBatis中编写嵌套子查询的动态SQL,并结... 目录一、Myhttp://www.chinasem.cnBATis动态SQL的核心优势1. 灵活性与可