在编写程序过程中,很多时候会用到数据来进行测试。如果要是手动制造数据的话,肯定要花费大把精力,这个很无所谓,发工资就行。这时faker 这个Python库可以生成各种各样的伪数据。
pip install Faker
(py3) G:\py_projects>pip install faker
Requirement already satisfied: faker in g:\py_projects\py3\lib\site-packages (14.1.0)
Requirement already satisfied: python-dateutil>=2.4 in g:\py_projects\py3\lib\site-packages (from faker) (2.8.2)
Requirement already satisfied: six>=1.5 in g:\py_projects\py3\lib\site-packages (from python-dateutil>=2.4->faker) (1.16.0)
WARNING: You are using pip version 22.0.4; however, version 22.3.1 is available.
You should consider upgrading via the 'G:\py_projects\py3\Scripts\python.exe -m pip install --upgrade pip' command.
from faker import Faker
fake = Faker(locale='zh_CN')
name = faker.name()
add = faker.address()
print(name, add)
# 自己操练执行吧(随机的名字万一和你的一样,投诉可不好喽、、、)
"""
简体中文:zh_CN
繁体中文:zh_TW
美国英文:en_US
英国英文:en_GB
德文:de_DE
日文:ja_JP
韩文:ko_KR
法文:fr_FR
"""
# 这些够用了
fake.address() # 地址
# '江西省广州县大兴苏街t座 231839'
fake.building_number() # 楼名
# 'U座'
fake.city() # 完整城市名
# '广州市'
fake.city_name() # 城市名字(不带市县)
# '广州'
fake.city_suffix() # 城市后缀名
# '市'
fake.country() # 国家名称
# '厄立特里亚'
fake.country_code(representation="alpha-2")
# 'BZ' # 国家编号
fake.district() # 地区
# '沙湾'
fake.postcode() # 邮编
# '332991'
fake.province() # 省
# '河北省'
fake.street_address() # 街道地址
# '武汉街D座'
fake.street_name() # 街道名称
# '广州路'
fake.street_suffix() # 街道后缀名
# '路'
fake.bs() # 商业用词
# 'synthesize strategic vortals'
fake.catch_phrase() # 妙句(口号)
# 'Robust even-keeled service-desk'
fake.company() # 公司名称
# '富罳科技有限公司'
fake.company_prefix() # 公司名称前缀
# '商软冠联'
fake.company_suffix() # 公司名称后缀
# '网络有限公司'
fake.am_pm() # AM或PM
# 'PM'
fake.century() # 世纪
# 'XII'
fake.date(pattern="%Y-%m-%d", end_datetime=None) # 日期字符串(可设置格式和最大日期)
# '1998-05-13'
fake.date_between(start_date="-30y", end_date="today") # 日期(可设置限定范围)
# datetime.date(2014, 8, 17)
fake.date_between_dates(date_start=None, date_end=None) # 同上
# datetime.date(2019, 10, 14)
fake.date_object(end_datetime=None) # 日期(可设置最大日期)
# datetime.date(1981, 12, 20)
fake.date_of_birth(tzinfo=None, minimum_age=0, maximum_age=115) # 出生日期
# datetime.date(1935, 12, 8)
fake.date_this_century(before_today=True, after_today=False) # 本世纪日期
# datetime.date(2003, 5, 4)
fake.date_this_decade(before_today=True, after_today=False) # 本年代中的日期
# datetime.date(2022, 1, 29)
fake.date_this_month(before_today=True, after_today=False) # 本月中的日期
# datetime.date(2022, 10, 10)
fake.date_this_year(before_today=True, after_today=False) # 本年中的日期
# datetime.date(2022, 3, 6)
fake.date_time(tzinfo=None, end_datetime=None) # 日期和时间
# datetime.datetime(1990, 8, 11, 22, 25)
fake.date_time_ad(tzinfo=None, end_datetime=None, start_datetime=None) # 日期和时间(从001年1月1日到现在)
# datetime.datetime(244, 12, 17, 9, 59, 56)
fake.date_time_between(start_date="-30y", end_date="now", tzinfo=None) # 日期时间(可设置限定范围)
# datetime.datetime(1990, 4, 19, 17, 23, 51)
fake.date_time_between_dates(datetime_start=None, datetime_end=None, tzinfo=None) # 同上
# datetime.datetime(2022, 10, 14, 14, 15, 36)
fake.date_time_this_century(before_now=True, after_now=False, tzinfo=None) # 本世纪中的日期和时间
# datetime.datetime(2022, 8, 26, 18, 27, 9)
fake.date_time_this_decade(before_now=True, after_now=False, tzinfo=None) # 本年代中的日期和时间
# datetime.datetime(2022, 2, 24, 22, 18, 44)
fake.date_time_this_month(before_now=True, after_now=False, tzinfo=None) # 本月中的日期和时间
# datetime.datetime(2022, 10, 3, 9, 20, 44)
fake.date_time_this_year(before_now=True, after_now=False, tzinfo=None) # 本年中的日期和时间
# datetime.datetime(2019, 2, 10, 7, 3, 18)
fake.day_of_month() # 几号
# '21'
fake.day_of_week() # 星期几
# 'Tuesday'
fake.future_date(end_date="+30d", tzinfo=None) # 未来日期
# datetime.date(2019, 10, 28)
fake.future_datetime(end_date="+30d", tzinfo=None) # 未来日期和时间
# datetime.datetime(2019, 10, 28, 21, 4, 35)
fake.iso8601(tzinfo=None, end_datetime=None) # iso8601格式日期和时间
# '1990-05-10T00:45:01'
fake.month() # 第几月
# '11'
fake.month_name() # 月份名称
# 'December'
fake.past_date(start_date="-30d", tzinfo=None) # 过去日期
# datetime.date(2019, 10, 3)
fake.past_datetime(start_date="-30d", tzinfo=None) # 过去日期和时间
# datetime.datetime(2019, 9, 30, 20, 25, 43)
fake.time(pattern="%H:%M:%S", end_datetime=None) # 时间(可设置格式和最大日期时间)
# '15:35:53'
fake.time_delta(end_datetime=None) # 时间间隔
# datetime.timedelta(0)
fake.time_object(end_datetime=None) # 时间(可设置最大日期时间)
# datetime.time(4, 41, 39)
fake.time_series(start_date="-30d", end_date="now", precision=None, distrib=None, tzinfo=None)
#
fake.timezone() # 时区
# 'Asia/Baku'
fake.unix_time(end_datetime=None, start_datetime=None) # UNIX时间戳
# 393980728
fake.year() # 某年
# '2022'
fake.job() # 职位
# '法务助理'
fk.ssn() #证件
# '140901****06153944'
fake.license_plate() # 牌照
# 'ZCO 000'
fake.bank_country() # 银行所属国家
# 'GB'
fake.bban() # 基本银行账号
# 'TPET9323218579379'
fake.iban() # 国际银行代码
# 'GB82IRVM1531009974701'
fakerk.phone_number() # 手机号码
# 158********
fake.ean(length=13) # EAN条形码
# '5456457843465'
fake.ean13() # EAN13条形码
# '2689789887590'
fake.ean8() # EAN8条形码
# '52227936'
fake.color_name() # 颜色名称
# 'Orange'
fake.hex_color() # 颜色十六进制值
# '#a5cb7c'
fake.rgb_color() # 颜色RGB值
# '15,245,42'
fake.rgb_css_color() # CSS颜色值
# 'rgb(15,70,13)'
fake.safe_color_name() # 安全色
# 'aqua'
fake.safe_hex_color() # 安全色十六进制值
# '#881100'
fake.credit_card_expire(start="now", end="+10y", date_format="%m/%y") # 过期年月
# '11/20'
fake.credit_card_full(card_type=None) # 完整信用卡信息
# 'VISA 16 digit\n秀珍 卢\n4653084445257690 11/19\nCVC: 935\n'
fake.credit_card_number(card_type=None) # 信用卡卡号
# '4339481813664365360'
fake.credit_card_provider(card_type=None) # 信用卡提供商
# 'VISA 19 digit'
fake.credit_card_security_code(card_type=None) # 信用卡安全码
# '597'
fake.cryptocurrency() # 加密货币代码+名称
# ('TRX', 'TRON')
fake.cryptocurrency_code() # 加密货币代码
# 'MZC'
fake.cryptocurrency_name() # 加密货币名称
# 'Ripple'
fake.currency() # 货币代码+名称
# ('GNF', 'Guinean franc')
fake.currency_code() # 货币代码
# 'SOS'
fake.currency_name() # 货币名称
# 'Lebanese pound'
fake.coordinate(center=None, radius=0.001) # 坐标
# Decimal('147.543284')
fake.latitude() # 纬度
# Decimal('66.519139')
fake.latlng() # 经纬度
# (Decimal('55.3370965'), Decimal('-15.427896'))
fake.local_latlng(country_code="US", coords_only=False) # 返回某个国家某地的经纬度
# ('25.67927', '-80.31727', 'Kendall', 'US', 'America/New_York')
fake.location_on_land(coords_only=False) # 返回地球上某个位置的经纬度
# ('42.50729', '1.53414', 'les Escaldes', 'AD', 'Europe/Andorra')
fake.longitude() # 经度
# Decimal('70.815233')
fake.ascii_company_email(*args, **kwargs) # 企业邮箱(ascii编码)
# 'qiuyan@xiulan.cn'
fake.ascii_email(*args, **kwargs) # 企业邮箱+免费邮箱(ascii编码)
# 'lei59@78.net'
fake.ascii_free_email(*args, **kwargs) # 免费邮箱(ascii编码)
# 'pcheng@gmail.com'
fake.ascii_safe_email(*args, **kwargs) # 安全邮箱(ascii编码)
# 'fangyan@example.org'
fake.company_email(*args, **kwargs) # 企业邮箱
# 'scao@pingjing.net'
fake.domain_name(levels=1) # 域名
# 'dy.cn'
fake.domain_word(*args, **kwargs) # 二级域名
# 'gangxiuying'
fake.email(*args, **kwargs) # 企业邮箱+免费邮箱
# 'na13@ding.cn'
fake.free_email(*args, **kwargs) # 免费邮箱
# 'fang48@hotmail.com'
fake.free_email_domain(*args, **kwargs) # 免费邮箱域名
# 'yahoo.com'
fake.hostname(*args, **kwargs) # 主机名
# 'lt-70.53.cn'
fake.image_url(width=None, height=None) # 图片URL
# 'https://placekitten.com/752/243'
fake.ipv4(network=False, address_class=None, private=None) # ipv4
# '160.152.149.78'
fake.ipv4_network_class() # ipv4网络等级
# 'b'
fake.ipv4_private(network=False, address_class=None) # 私有ipv4
# '10.99.124.57'
fake.ipv4_public(network=False, address_class=None) # 公共ipv4
# '169.120.29.235'
fake.ipv6(network=False) # ipv6
# 'f392:573f:d60f:9aed:2a4c:36d7:fe5b:7034'
fake.mac_address() # MAC地址
# '62:67:79:8c:c2:40'
fake.safe_email(*args, **kwargs) # 安全邮箱
# 'jing58@example.org'
fake.slug(*args, **kwargs) # URL中的slug
# ''
fake.tld() # 顶级域名
# 'cn'
fake.uri() # URI
# 'http://yi.com/list/main/explore/register.php'
fake.uri_extension() # URI扩展
# '.php'
fake.uri_page() # URI页
# 'terms'
fake.uri_path(deep=None) # URI路径
# 'blog/tags/blog'
fake.url(schemes=None) # URL
# 'http://liutao.cn/'
fake.user_name(*args, **kwargs) # 用户名
# 'xiulan80'
fake.isbn10(separator="-") # ISBN-10图书编号
# '0-588-73943-X'
fake.isbn13(separator="-") # ISBN-13图书编号
# '978-1-116-51399-8'
fake.paragraph(nb_sentences=3, variable_nb_sentences=True, ext_word_list=None) # 单个段落
# '最新事情生产.方面解决名称责任而且.类型其实内容发生电脑.音乐具有今年是一.'
fake.paragraphs(nb=3, ext_word_list=None) # 多个段落
# ['使用评论管理.没有广告工作评论是否.', '帖子而且专业.这些比较完全发现准备设计工具.', '完成详细发生空间汽车.新闻电影您的游戏这种操作网站知道.']
fake.sentence(nb_words=6, variable_nb_words=True, ext_word_list=None) # 单个句子
# '直接这样点击单位对于时候.'
fake.sentences(nb=3, ext_word_list=None) # 多个句子
# ['电话国际项目管理.', '软件之后提高一样次数电影规定.', '东西会员发展什么不断经济.']
fake.text(max_nb_chars=200, ext_word_list=None) # 多个文本
# ['主题作者不能.进行国家系统地区增加.经验质量价格我的.']
# ('资源信息得到因此开发资源资料.\n'
# '国家这样等级需要用户如此.电话非常一切游戏所以学校类型.不要正在如果来源认为投资在线.\n'
# '这些更新密码其中起来实现有些.以上事情重要通过.\n'
fake.word(ext_word_list=None) # 单个词语
# '新闻'
fake.words(nb=3, ext_word_list=None, unique=False) # 多个词语
# ['选择', '历史', '规定']