欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python 隨機(jī)生成測(cè)試數(shù)據(jù)的模塊:faker基本使用方法詳解

 更新時(shí)間:2020年04月09日 11:47:15   作者:隨風(fēng)行云  
這篇文章主要介紹了Python 隨機(jī)生成測(cè)試數(shù)據(jù)的模塊:faker基本使用方法,結(jié)合實(shí)例形式詳細(xì)分析了Python 隨機(jī)生成測(cè)試數(shù)據(jù)的模塊faker基本功能、原理、使用方法及操作注意事項(xiàng),需要的朋友可以參考下

本文實(shí)例講述了Python 隨機(jī)生成測(cè)試數(shù)據(jù)的模塊:faker基本使用方法。分享給大家供大家參考,具體如下:

本文內(nèi)容:

  1. faker的介紹
  2. faker的使用
  3. 小例子:生成隨機(jī)的數(shù)據(jù)表信息

首發(fā)日期:2018-06-15


faker介紹:

  • faker是python的一個(gè)第三方模塊,是一個(gè)github上的開源項(xiàng)目。
  • 主要用來創(chuàng)建一些測(cè)試用的隨機(jī)數(shù)據(jù)。

官方文檔:https://faker.readthedocs.io/en/master/index.html


faker的使用:

1.安裝模塊

pip3 install Faker

【使用faker也能識(shí)別成功,不過新版已經(jīng)更新為Faker】

2.導(dǎo)入模塊

from faker import Faker

【主要使用的是Factory類,而導(dǎo)入Faker,會(huì)同時(shí)導(dǎo)入Factory】

image

3.使用步驟:

  • 3.1初始化:
    fake=Faker()
    • Faker()調(diào)用的是Factory的create方法,常用參數(shù)選項(xiàng):image
      • 用于生成本地化數(shù)據(jù):locale【默認(rèn)情況下是en_US,所以生成的數(shù)據(jù)是美式英文的】
      • providers是一個(gè)包含了多種生成隨機(jī)數(shù)據(jù)的生成器的“提供者”,比如他包含了生產(chǎn)隨機(jī)姓名的生成器,包含了隨機(jī)地址的生成器。如果我們想要自己定義隨機(jī)生成的數(shù)據(jù)的規(guī)則,那么我們需要自定義providers。如何生成一個(gè)providers,可以參考https://faker.readthedocs.io/en/master/index.html#how-to-create-a-provider
        • image
  • 3.2.調(diào)用方法:
    • 利用Faker對(duì)象調(diào)用方法,調(diào)用方法的返回值就是隨機(jī)的數(shù)據(jù)。
    • 不同的數(shù)據(jù)需要調(diào)用不同的方法,常見方法參見下面。
from faker import Faker


# fake=Faker() #默認(rèn)生成美國(guó)英文數(shù)據(jù)
fake=Faker(locale='zh_CN')

# 地址類
print("地址類".center(20,"-"))
print(fake.address())#海南省成市豐都深圳路p座 425541
print(fake.street_address())#深圳街X座
print(fake.street_name())#長(zhǎng)沙路
print(fake.city_name(),fake.city())#蘭州 貴陽市 (相差“市”)
print(fake.province())#陜西省


#公司類:
print("公司類".center(20,"-"))
print(fake.company())#惠派國(guó)際公司信息有限公司
print(fake.company_suffix())#網(wǎng)絡(luò)有限公司
print(fake.company_prefix())#鑫博騰飛

#個(gè)人信息類
print("個(gè)人信息類".center(20,"-"))
print(fake.name())#東浩
print(fake.simple_profile())
#{'username': 'leihan', 'name': '武帥', 'sex': 'F', 'address': '吉林省淮安市雙灤家街C座 210434', 'mail': 'lishao@hotmail.com', 'birthdate': '1988-11-12'}
print(fake.user_name(),fake.password(special_chars=False))#ajiang zI2QbHy02p

#文章類
print("文章類".center(20,"-"))
print(fake.word())#當(dāng)前
print(fake.words(3))#['歡迎', '支持', '圖片']
print(fake.sentence(3))#精華有關(guān)一些.
print(fake.paragraph())#大家電話空間一起操作圖片要求.上海發(fā)展到了之間用戶也是的人.必須記者關(guān)系介紹注冊(cè).用戶時(shí)候投資發(fā)布.

常用方法:

https://faker.readthedocs.io/en/master/locales/zh_CN.html 由于主要使用中文數(shù)據(jù),所以提供常見的方法示例是中文的。想要了解其他的,可以在官網(wǎng)點(diǎn)擊其他語言,參考示例結(jié)果,不過方法大體上都是相同的。

地址信息類:

  • fake.address():完整地址,比如海南省成市豐都深圳路p座 425541
  • fake.street_address():街道+地址,比如興城路A座
  • fake.street_name():街道名,比如宜都街
  • fake.city_name():城市名,比如蘭州
  • fake.city():城市,比如蘭州市
  • fake.province():省份名,比如陜西省
  • fake.postcode():郵編
  • fake.country():國(guó)家

公司信息類:

  • fake.company():公司名,比如惠派國(guó)際公司信息有限公司
  • fake.company_suffix():公司名后綴(公司性質(zhì)),比如網(wǎng)絡(luò)有限公司
  • fake.company_prefix():公司名前綴,比如鑫博騰飛

日期類:

  • fake.date(pattern="%Y-%m-%d", end_datetime=None)
  • fake.year():隨機(jī)年份
  • fake.day_of_week():隨機(jī)星期數(shù)
  • fake.time(pattern="%H:%M:%S", end_datetime=None):隨機(jī)時(shí)間

網(wǎng)絡(luò)類:

  • fake.company_email():企業(yè)郵箱
  • fake.email():郵箱

個(gè)人信息類:

  • fake.name():姓名

  • fake.user_name(*args, **kwargs):用戶名,只是隨機(jī)的英文姓名組合,一般是6位
  • fake.phone_number():電話號(hào)碼
  • fake.simple_profile(sex=None):簡(jiǎn)略個(gè)人信息,包括用戶名,姓名,性別,地址,郵箱,出生日期。比如{'username': 'chao', 'name': '胡秀蘭', 'sex': 'M', 'address': '寧夏回族自治區(qū)玉市沙灣寧德路t座 873713', 'mail': 'uxiao@yahoo.com', 'birthdate': '1998-06-12'}
  • fake.profile(fields=None, sex=None):詳略個(gè)人信息,比簡(jiǎn)略個(gè)人信息多出公司名、血型、工作、位置、域名等等信息。
  • fake.password():密碼
    • 參數(shù)選項(xiàng):length:密碼長(zhǎng)度;special_chars:是否能使用特殊字符;digits:是否包含數(shù)字;upper_case:是否包含大寫字母;lower_case:是否包含小寫字母。
    • 默認(rèn)情況:length=10, special_chars=True, digits=True, upper_case=True, lower_case=True
  • fake.job():工作

文章類:

  • fake.word(ext_word_list=None):隨機(jī)詞語
    • ext_word_list可以是一個(gè)列表,那么詞語會(huì)從列表中取
  • fake.words(nb=3, ext_word_list=None):隨機(jī)多個(gè)詞語
    • nb是數(shù)量,對(duì)于words來說是返回多少個(gè)詞語
  • fake.sentence(nb_words=6, variable_nb_words=True, ext_word_list=None):隨機(jī)短語(會(huì)包括短語結(jié)束標(biāo)志點(diǎn)號(hào))
  • fake.paragraph(nb_sentences=3, variable_nb_sentences=True, ext_word_list=None):隨機(jī)段落
  • fake.paragraphs(nb=3, ext_word_list=None):多個(gè)隨機(jī)段落

數(shù)據(jù)類型類:

  • fake.pystr(min_chars=None, max_chars=20):自定義長(zhǎng)度的隨機(jī)字符串
  • fake.pyint():隨機(jī)整數(shù)

PS:

想了解Faker的更多用法,可以參考官方文檔:https://faker.readthedocs.io/en/master/index.html


小例子:生成隨機(jī)的數(shù)據(jù)表信息

注意:這里為了例子簡(jiǎn)便,對(duì)于數(shù)據(jù)庫操作就直接使用“命令式”的了,而不使用ORM模型式的了。

實(shí)現(xiàn)過程:

  1. 利用pymysql連接數(shù)據(jù)庫
  2. 創(chuàng)建表
  3. 利用fake格式化要插入的數(shù)據(jù)
  4. 利用pymysql執(zhí)行插入語句

代碼:

import pymysql
from faker import Faker

conn=pymysql.connect(host="localhost",port=3306,user="root",password="123456",db="it",charset="utf8")

cursor=conn.cursor()
#這里給出表結(jié)構(gòu),如果使用已存在的表,可以不創(chuàng)建表。
sql="""
create table user(
id int PRIMARY KEY auto_increment,
username VARCHAR(20),
password VARCHAR(20),
address VARCHAR(35) 
)
"""
cursor.execute(sql)
fake=Faker("zh-CN")
for i in range(20):
  sql="""insert into user(username,password,address) 
  values('%s','%s','%s')"""\
    %(fake.user_name(),fake.password(special_chars=False),fake.address())
  cursor.execute(sql)

conn.commit()
cursor.close()
conn.close()

結(jié)果:

image

PS:這里再提供幾款相關(guān)工具供大家參考使用:

在線隨機(jī)生成個(gè)人信息數(shù)據(jù)工具:
http://tools.jb51.net/aideddesign/rnd_userinfo

在線隨機(jī)字符/隨機(jī)密碼生成工具:
http://tools.jb51.net/aideddesign/rnd_password

在線隨機(jī)數(shù)字/字符串生成工具:
http://tools.jb51.net/aideddesign/suijishu

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)學(xué)運(yùn)算技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python編碼操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • Python3安裝Scrapy的方法步驟

    Python3安裝Scrapy的方法步驟

    本篇文章主要介紹了Python3安裝Scrapy的方法步驟,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-11-11
  • Python入門教程(三)Python語法解析

    Python入門教程(三)Python語法解析

    這篇文章主要介紹了Python入門教程(三)Python語法解析,Python是一門非常強(qiáng)大好用的語言,也有著易上手的特性,本文為入門教程,需要的朋友可以參考下
    2023-04-04
  • python實(shí)現(xiàn)上傳下載文件功能

    python實(shí)現(xiàn)上傳下載文件功能

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)上傳下載文件功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • neo4j網(wǎng)址拒絕訪問的問題及解決

    neo4j網(wǎng)址拒絕訪問的問題及解決

    這篇文章主要介紹了neo4j網(wǎng)址拒絕訪問的問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • Python模擬登錄網(wǎng)易云音樂并自動(dòng)簽到

    Python模擬登錄網(wǎng)易云音樂并自動(dòng)簽到

    時(shí)隔三周沒有和大家見過面了,最近在研究python模擬登陸專題,話不多說,讓我們愉快地開始實(shí)現(xiàn)模擬登陸實(shí)現(xiàn)網(wǎng)易云自動(dòng)簽到,需要的朋友可以參考下
    2021-06-06
  • python查找第k小元素代碼分享

    python查找第k小元素代碼分享

    這篇文章分享了python查找第k小的元素程序代碼,大家參考使用吧
    2013-12-12
  • 使用Python-OpenCV向圖片添加噪聲的實(shí)現(xiàn)(高斯噪聲、椒鹽噪聲)

    使用Python-OpenCV向圖片添加噪聲的實(shí)現(xiàn)(高斯噪聲、椒鹽噪聲)

    這篇文章主要介紹了使用Python-OpenCV向圖片添加噪聲的實(shí)現(xiàn)(高斯噪聲、椒鹽噪聲) ,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-05-05
  • Python繼承和子類從Person到Student演示實(shí)例

    Python繼承和子類從Person到Student演示實(shí)例

    這篇文章主要為大家介紹了Python繼承和子類從Person到Student演示實(shí)例分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • python+opencv識(shí)別圖片中的圓形

    python+opencv識(shí)別圖片中的圓形

    這篇文章主要為大家詳細(xì)介紹了python+opencv識(shí)別圖片中的圓形 ,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • python條件和循環(huán)的使用方法

    python條件和循環(huán)的使用方法

    下面我們來介紹python條件語句和循環(huán)語句的使用方法。
    2013-11-11

最新評(píng)論