python产生模拟数据faker库的使用详解(上)

举报
泽宇-Li 发表于 2020/11/04 19:24:30 2020/11/04
【摘要】 简介使用faker可以获取很多模拟数据,如:姓名、电话、地址、银行、汽车、条形码、公司、信用卡、email、user_agen等等学会使用这个库,再也不用为制造假数据发愁了。。。。。。同时,使用起来非常简单,只需要安装,导入库,并创建实例,即可使用,如下:主要的方法分类如上面例子,每次调用 fake 实例的 name()方法时,都会产生不同随机姓名。fake 实例还有很多方法可用,这些方法分...

简介

使用faker可以获取很多模拟数据,如:姓名、电话、地址、银行、汽车、条形码、公司、信用卡、email、user_agen等等

学会使用这个库,再也不用为制造假数据发愁了。。。。。。

同时,使用起来非常简单,只需要安装,导入库,并创建实例,即可使用,如下:

主要的方法分类

如上面例子,每次调用 fake 实例的 name()方法时,都会产生不同随机姓名。fake 实例还有很多方法可用,这些方法分为以下几类:

  • address 地址

  • person 人物类:性别、姓名等

  • barcode 条码类

  • color 颜色类

  • company 公司类:公司名、公司email、公司名前缀等

  • credit_card 银行卡类:卡号、有效期、类型等

  • currency 货币

  • date_time 时间日期类:日期、年、月等

  • file 文件类:文件名、文件类型、文件扩展名等

  • internet 互联网类

  • job 工作

  • lorem 乱数假文

  • misc 杂项类

  • phone_number 手机号码类:手机号、运营商号段

  • python python数据

  • profile 人物描述信息:姓名、性别、地址、公司等

  • ssn 社会安全码(身份证号码)

  • user_agent 用户代理

address 地址

>>> fake.country() # 国家
'奥地利'
>>> fake.city() # 城市
'郑州市'
>>> fake.city_suffix() # 城市的后缀,中文是:市或县
'市'
>>> fake.address() # 地址
'河北省巢湖县怀柔南宁路f座 169812'
>>> fake.street_address() # 街道
'邯郸路W座'
>>> fake.street_name() # 街道名
'合肥路'
>>> fake.postcode() # 邮编
'314548'
>>> fake.latitude() # 维度
Decimal( '68.0228435' )
>>> fake.longitude() # 经度
Decimal( '155.964341' )

person 人物

1
2
3
4
5
6
7
8
9
10
11
12
13
14
>>> fake.name() # 姓名
'单玉珍'
>>> fake.last_name() # 姓
'潘'
>>> fake.first_name() # 名
'琴'
>>> fake.name_male() # 男性姓名
'官平'
>>> fake.last_name_male() # 男性姓
'安'
>>> fake.first_name_male() # 男性名
'文'
>>> fake.name_female() # 女性姓名
'许颖'

barcode 条码

1
2
3
4
5
6
>>> fake.ean8() # 8位条码
'12771363'
>>> fake.ean13() # 13位条码
'9133134950963'
>>> fake.ean(length = 8 ) # 自定义位数条码,只能选8或者13
'20417161'

color 颜色

1
2
3
4
5
6
7
8
9
10
11
12
>>> fake.hex_color() # 16进制表示的颜色
'#671f6d'
>>> fake.rgb_css_color() # css用的rgb色
'rgb(237,74,237)'
>>> fake.rgb_color() # 表示rgb色的字符串
'208,102,218'
>>> fake.color_name() # 颜色名字
'Brown'
>>> fake.safe_hex_color() #安全16进制色
'#ee4400'
>>> fake.safe_color_name() # 安全颜色名字
'maroon'

company 公司

1
2
3
4
>>> fake.company() # 公司名
'时空盒数字科技有限公司'
>>> fake.company_suffix() # 公司名后缀
'科技有限公司'

credit_card 银行信用卡

1
2
3
4
5
6
7
8
9
10
>>> fake.credit_card_number(card_type = None ) # 卡号
'375325478746231'
>>> fake.credit_card_provider(card_type = None ) # 卡的提供者
'VISA 13 digit'
>>> fake.credit_card_security_code(card_type = None ) # 卡的安全密码
'450'
>>> fake.credit_card_expire() # 卡的有效期
'04/22'
>>> fake.credit_card_full(card_type = None ) # 完整卡信息
'Maestro\n秀芳 商\n502001016117 04/27\nCVV: 144\n'

currency 货币

1
2
>>> fake.currency_code() # 货币代码
'HNL'

date_time 时间日期

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
>>> fake.date_time(tzinfo = None ) # 随机日期时间
datetime.datetime( 2001 , 3 , 18 , 17 , 57 , 44 )
>>> fake.iso8601(tzinfo = None ) # 以iso8601标准输出的日期
'1973-11-16T22:58:37'
 
>>> fake.date_time_this_month(before_now = True , after_now = False , tzinfo = None ) # 本月的某个日期
datetime.datetime( 2017 , 11 , 1 , 14 , 33 , 48 )
>>> fake.date_time_this_year(before_now = True , after_now = False , tzinfo = None ) # 本年的某个日期
datetime.datetime( 2017 , 3 , 2 , 13 , 55 , 31 )
>>> fake.date_time_this_decade(before_now = True , after_now = False , tzinfo = None ) # 本年代内的一个日期
datetime.datetime( 2010 , 3 , 26 , 6 , 33 , 23 )
>>> fake.date_time_this_century(before_now = True , after_now = False , tzinfo = None ) # 本世纪一个日期
datetime.datetime( 2015 , 7 , 21 , 19 , 27 , 53 )
>>> fake.date_time_between(start_date = "-30y" , end_date = "now" , tzinfo = None ) # 两个时间间的一个随机时间
datetime.datetime( 2005 , 12 , 3 , 17 , 17 , 15 )
 
>>> fake.timezone() # 时区
'America/Guatemala'
>>> fake.time(pattern = "%H:%M:%S" ) # 时间(可自定义格式)
'11:21:52'
>>> fake.am_pm() # 随机上午下午
'PM'
>>> fake.month() # 随机月份
'02'
>>> fake.month_name() # 随机月份名字
'August'
>>> fake.year() # 随机年
'1974'
>>> fake.day_of_week() # 随机星期几
'Sunday'
>>> fake.day_of_month() # 随机月中某一天
'02'
>>> fake.time_delta() # 随机时间延迟
datetime.timedelta( 13371 , 27637 )
>>> fake.date_object() # 随机日期对象
datetime.date( 1983 , 1 , 26 )
>>> fake.time_object() # 随机时间对象
datetime.time( 17 , 8 , 56 )
>>> fake.unix_time() # 随机unix时间(时间戳)
1223246848
>>> fake.date(pattern = "%Y-%m-%d" ) # 随机日期(可自定义格式)
'1984-04-20'
>>> fake.date_time_ad(tzinfo = None ) # 公元后随机日期
datetime.datetime( 341 , 9 , 11 , 8 , 6 , 9 )



【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。