Python脚本实现随机数据生成自由详解
作者:shigen01
这篇文章主要为大家详细介绍了Python如何通过脚本实现随机数据生成自由,文中的示例代码讲解详细,感兴趣的小伙伴快跟随小编一起学习一下吧
我们先来抽取一下关键词:控制台,任一类型、数量、随机数据。
肯定又是shigen
的定制化程序了。起因是我想生成一堆随机的地址、姓名之类的数据,填充我的user表。但是在线的网站都是要你去看广告的。当然也能理解:免费的才是最贵的。 用了GPT吧,涉及到法律风险,差点号都被封了。咱们不能受这样的委屈啊,直接看是干。
废话这么多,先来看看效果吧。
查看帮助
生成随机的地址
生成随机名单
随机邮箱
其它的效果就不再这里掩饰了,感兴趣的伙伴可以去shigen的github自行查看。
最后,我们分析一下程序吧。其实最开始shigen
准备用python的click
库去做的,但是考虑到count
是一个公共的参数,在click
里实现真的是太复杂了,最后放弃了,关于faker
的使用可以参考shigen
的这一篇文章:如何用python优雅地生成模拟数据。
最后,贴上我的代码截图:
# -*- encoding: utf-8 -*- _date__ ='2023/12/16 16:44:34' import argparse from faker import Faker fake = Faker('zh-CN') def generate_data(data_type, count): if data_type == 'address' : for _ in range(count): print(fake.address()) elif data_type == 'company' : for - in range(count): print(fake.company()) elif data_type == 'datetime' : for _ in range(count): print(fake.date_time()) elif data_type == 'email': for _ in range(count): print(fake.email()) elif data_type == 'name' : for _ in range(count): print(fake.name()) elif data_type == 'phone': for _ in range(count): print(fake.phone_number()) elif data_type == 'text': for _ in range(count): print(fake.paragraph()) elif data_type == 'internet': for _ in range(count): print(fake.url()) elif data_type == 'vehicle' : for _ in range(count): print(fake.license_plate()) def main(): parser = argparse.ArgumentParser(description='生成任意数量的模拟数据') parser.add_argument('-t', '--type', choices-['address', 'company', 'datetime', 'email', 'name', 'phone', 'text', 'interet', 'vehicle'], help="生成的数据类型') parser.add_argument('-c','--count',type=int, default=1,help='生成模拟数据的数量') args = parser.parse_args() generate_data(args,type, args.count) if __name__ == '__main__': main()
感兴趣的伙伴可以自行尝试研究一下,也希望能提升大家的效率。
到此这篇关于Python脚本实现随机数据生成自由详解的文章就介绍到这了,更多相关Python生成随机数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!