python造数据的库faker

python中造数据的库——faker
faker是一个Python包,为您生成你所需要的任何(假)数据。

1. 安装

pip install Faker

2. 语法

I. 引用

from faker import Faker
from faker import Factory #引入工厂类

II. 创建初始化生成器

fake = Faker()

可以在初始化时设置本地化,即是设定区域,如下:

'''
	简体中文:zh_CN
 	繁体中文:zh_TW
	美国英文:en_US
	英国英文:en_GB
 '''
fake = Faker("zh_CN")
# 上下相同用其一
fake = Factory().create('zh_CN')

3. 用法

person 人物

print(fake.name())  # 姓名
print(fake.last_name())   # 姓
print(fake.first_name())   # 名
print(fake.name_male())    # 男性姓名
print(fake.last_name_male())    # 男性姓
print(fake.name_female())    # 女性姓名
print(fake.first_name_female())    # 女性名

address 地址

print(fake.city())  # 城市名
print(fake.address())  # 地址
print(fake.street_address())  # 街道
print(fake.street_name())  # 街道名称
print(fake.street_suffix())  # 街道后缀(街,路)
print(fake.city_suffix())  # 市县
print(fake.building_number())  # 建筑编号
print(fake.longitude())  # 经纬
print(fake.latitude())  # 维度
print(fake.postcode())  # 邮政编码
print(fake.country())  # 国家
print(fake.province()) # 随机产生省份

color 颜色

# safe_  : 安全
print(fake.rgb_css_color())  # 颜色RGB
print(fake.rgb_color())  # 颜色RGB字符
print(fake.safe_color_name())  # 颜色名称
print(fake.hex_color())   # 16进制的颜色
print(fake.safe_hex_color())   # 16进制的颜色

file文件

print(fake.file_name(category="image", extension="jpg")) # 文件名(指定文件类型和后缀名)
print(fake.file_name(category=None, extension=None))  # 随机生成各类型文件
print(fake.file_extension(category=None))   # 文件后缀
print(fake.mime_type(category=None))    # 'multipart/form-data'
print(fake.file_path(depth=1, category=None, extension=None)) # '/教育/客户.js'

phone_number手机号

print(fake.phone_number())  # 手机号码
print(fake.phonenumber_prefix())  # 运营商号段,手机号码前三位

时间

# 随机产生时间
fake.month_name()
# 'September'
fake.date_time_this_century(before_now=True, after_now=False, tzinfo=None)
# datetime.datetime(2010, 7, 21, 18, 52, 43)
fake.time_object(end_datetime=None)
# datetime.time(6, 39, 26)
fake.date_time_between(start_date="-30y", end_date="now", tzinfo=None)
# datetime.datetime(2013, 10, 11, 18, 43, 40)
fake.future_date(end_date="+30d", tzinfo=None)
# datetime.date(2018, 7, 8)
fake.date_time(tzinfo=None, end_datetime=None)
# datetime.datetime(2006, 9, 4, 20, 46, 6)
fake.date(pattern="%Y-%m-%d", end_datetime=None)
# '1998-08-02'
fake.date_time_this_month(before_now=True, after_now=False, tzinfo=None)
# datetime.datetime(2018, 6, 8, 9, 56, 24)
fake.timezone()
# 'Africa/Conakry'
fake.date_time_this_decade(before_now=True, after_now=False, tzinfo=None)
# datetime.datetime(2017, 6, 27, 21, 18, 28)
fake.month()
# '04'
fake.day_of_week()
# 'Wednesday'
fake.iso8601(tzinfo=None, end_datetime=None)
# '1988-02-28T09:22:29'
fake.time_delta(end_datetime=None)
# datetime.timedelta(10832, 82660)
fake.date_object(end_datetime=None)
# datetime.date(2005, 8, 18)
fake.date_this_decade(before_today=True, after_today=False)
# datetime.date(2015, 1, 5)
fake.date_this_century(before_today=True, after_today=False)
# datetime.date(2000, 6, 1)
fake.date_this_month(before_today=True, after_today=False)
# datetime.date(2018, 6, 13)
fake.am_pm()
# 'AM'
fake.past_datetime(start_date="-30d", tzinfo=None)
# datetime.datetime(2018, 6, 25, 7, 41, 34)
fake.date_this_year(before_today=True, after_today=False)
# datetime.date(2018, 2, 24)
fake.date_time_between_dates(datetime_start=None, datetime_end=None, tzinfo=None)
# datetime.datetime(2018, 6, 26, 14, 40, 5)
fake.date_time_ad(tzinfo=None, end_datetime=None)
# datetime.datetime(673, 1, 28, 18, 17, 55)
fake.date_between_dates(date_start=None, date_end=None)
# datetime.date(2018, 6, 26)
fake.future_datetime(end_date="+30d", tzinfo=None)
# datetime.datetime(2018, 7, 4, 10, 53, 6)
fake.century()
# 'IX'
fake.past_date(start_date="-30d", tzinfo=None)
# datetime.date(2018, 5, 30)
fake.time(pattern="%H:%M:%S", end_datetime=None)
# '01:32:14'
fake.day_of_month()
# '19'
fake.unix_time(end_datetime=None, start_datetime=None)
# 1284297794
fake.date_time_this_year(before_now=True, after_now=False, tzinfo=None)
# datetime.datetime(2018, 5, 24, 11, 25, 25)
fake.date_between(start_date="-30y", end_date="today")
# datetime.date(2003, 1, 11)
fake.year()
# '1993'
fake.time_series(start_date="-30d", end_date="now", precision=None, distrib=None, tzinfo=None)
# <generator object time_series at 0x7f44e702a620>

字符

# 产生长度在最大值与最小值之间的随机字符串
print(fake.pystr(min_chars=0, max_chars=8))
# 汉字字符
print(fake.word()) 
# 记者
print(fake.words(nb=3, ext_word_list=None, unique=False)) 
# ['企业', '阅读', '数据']
print(fake.sentence(nb_words=4, variable_nb_words=True, ext_word_list=None))   # 句子
# 开始积分需要.
print(fake.sentences(nb=3, ext_word_list=None))
# ['中文浏览资料记者.', '的是基本很多深圳国家然后.', '国际积分不会.']
print(fake.paragraph(nb_sentences=2, variable_nb_sentences=True, ext_word_list=None))  #段落
# 网上注意管理注册地区还有.国家选择管理各种研究论坛活动.
print(fake.paragraphs(nb=2, ext_word_list=None))
# ['技术关于国际开发的是部门一点.已经那个手机只是来自类型.支持问题成为支持.拥有下载喜欢自己根据.', '还是浏览你们发布我们方法虽然.']
print(fake.text(max_nb_chars=200, ext_word_list=None))  # 200个字
print(fake.texts(nb_texts=2, max_nb_chars=10, ext_word_list=None))  # 列表每个元素10个字

``

其他

# 产生随机email
print(fake.email())
# 公司邮箱
print(fake.company_email())
# 免费邮箱
print(fake.free_email())
# 安全邮箱
print(fake.safe_email()) 

# ipv6地址
 print(fake.ipv6(network=False)# 产生随机IPV4地址
print(fake.ipv4())

# 随机产生车牌号
print(fake.license_plate())

# 公司名后缀
print(fake.company_suffix())
# 随机产生公司名
print(fake.company())

# 随机产生工作岗位
print(fake.job())

# 随机生成密码
print(fake.password(length=10, special_chars=True, digits=True, upper_case=True, lower_case=True))
# 随机生成uuid
print(fake.uuid4())
# 随机生成sha1
print(fake.sha1(raw_output=False))
# 随机生成md5
print(fake.md5(raw_output=False))

# 生成基本信息
print(fake.profile(fields=None, sex=None))
print(fake.simple_profile(sex=None))

# 随机生成浏览器头user_agent
print(fake.user_agent())
# IE浏览器
print(fake.internet_explorer())
# opera浏览器
print(fake.opera())
# firefox浏览器
print(fake.firefox())
# chrome浏览器
print(fake.chrome())

更多方法详情参考文档
locales/zh_CN文档

  • 1
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值