使用Python隨機(jī)生成數(shù)據(jù)的方法
通過Python_Faker生成測試數(shù)據(jù)
通過Python_Faker生成測試數(shù)據(jù)需要安裝Faker包,使用pip安裝pip install Faker
。
隨機(jī)生成5個(gè)人的個(gè)人信息(包括用戶名、年齡、性別、地址、工作、婚姻狀態(tài))并保存為.csv文件,代碼如下所示。
from faker import Faker import pandas as pd from collections import OrderedDict fake = Faker(locale='zh_CN') sex_dict = OrderedDict([('男', 0.52), ('女', 0.48)]) married_dict = OrderedDict([('未婚', 0.4), ('已婚', 0.5), ('離異', 0.1), ]) work_dict = OrderedDict([('白領(lǐng)', 0.45), ('教師', 0.1), ('工人', 0.2), ('公務(wù)員', 0.1), ('銷售', 0.15)]) user_name = [] age = [] address = [] sex = [] work = [] married = [] # 生成人數(shù) num = 5 # 生成name age address for i in range(num): user_name.append(fake.user_name()) age.append(fake.random_int(min=16, max=45)) address.append(fake.province()) sex.append(fake.random_element(sex_dict)) work.append(fake.random_element(work_dict)) married.append(fake.random_element(married_dict)) data = {'用戶名': user_name, '年齡': age, '性別': sex, '地址': address, '工作': work, '婚姻狀態(tài)': married} print(data) users = pd.DataFrame.from_dict(data) print(users) users.to_csv("test_data.csv", index=True)
運(yùn)行后得到的test_data.csv
文件中的內(nèi)容如下所示。
具體還可以生成很多其他信息,有地址相關(guān)、汽車相關(guān)、銀行相關(guān)、條形碼相關(guān)、顏色相關(guān)、公司相關(guān)、信用卡相關(guān)、貨幣相關(guān)、時(shí)間相關(guān)、文件相關(guān)、坐標(biāo)相關(guān)、網(wǎng)絡(luò)相關(guān)、圖書相關(guān)、職位相關(guān)、文本相關(guān)、編碼相關(guān)、人物相關(guān)、電話相關(guān)、檔案相關(guān)、身份證相關(guān)、用戶代理相關(guān)等種類信息。
通過Python基礎(chǔ)語法生成一些隨機(jī)數(shù)
利用26個(gè)字母和10個(gè)數(shù)字隨機(jī)生成5個(gè)八位密碼
import random list1 = [] for i in range(97, 123): list1.append(chr(i)) # 得到字母字符并放入列表 for i in range(48, 58): list1.append(chr(i)) # 得到數(shù)字字符并放入列表 for i in range(5): str1 = ''.join(random.choices(list1, k=8)) # 隨機(jī)生成8位密碼的列表,并將其轉(zhuǎn)換成字符串的形式 print(f'第{i + 1}個(gè)密碼是{str1}')
第1個(gè)密碼是90xenegh
第2個(gè)密碼是kshnh0md
第3個(gè)密碼是3yw38d00
第4個(gè)密碼是78resjpv
第5個(gè)密碼是5lf9f76z
生成5個(gè)2位小數(shù)點(diǎn)的隨機(jī)數(shù)
import random for i in range(5): a = random.uniform(1, 100) # 生成的隨機(jī)數(shù)范圍 print(round(a, 2))
37.14
10.74
32.11
53.16
84.58
生成5個(gè)隨機(jī)整數(shù)數(shù)
import random for i in range(5): a = random.randint(1, 100) print(a)
32 17 98 22 18
到此這篇關(guān)于使用Python隨機(jī)生成數(shù)據(jù)的方法的文章就介紹到這了,更多相關(guān)Python隨機(jī)生成數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
tensorflow 實(shí)現(xiàn)打印pb模型的所有節(jié)點(diǎn)
今天小編就為大家分享一篇tensorflow 實(shí)現(xiàn)打印pb模型的所有節(jié)點(diǎn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-01-01Python OpenCV 針對(duì)圖像細(xì)節(jié)的不同操作技巧
這篇文章主要介紹了Python OpenCV 針對(duì)圖像細(xì)節(jié)的不同操作,包括圖像像素的說明,圖像屬性信息的獲取與修改以及圖像通道的知識(shí)(包括拆分通道和合并通道),需要的朋友可以參考下2021-08-08實(shí)例講解Python中SocketServer模塊處理網(wǎng)絡(luò)請(qǐng)求的用法
SocketServer模塊中帶有很多實(shí)現(xiàn)服務(wù)器所能夠用到的socket類和操作方法,下面我們就來以實(shí)例講解Python中SocketServer模塊處理網(wǎng)絡(luò)請(qǐng)求的用法:2016-06-06python 2.6.6升級(jí)到python 2.7.x版本的方法
這篇文章主要介紹了python 2.6.6升級(jí)到python 2.7.x版本的方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-10-10Python實(shí)現(xiàn)繁體轉(zhuǎn)為簡體的方法示例
這篇文章主要介紹了Python實(shí)現(xiàn)繁體轉(zhuǎn)為簡體的方法,涉及Python編碼轉(zhuǎn)換相關(guān)操作技巧,需要的朋友可以參考下2018-12-12python解決No?module?named?pip問題兩種方法
當(dāng)出現(xiàn)No module named pip錯(cuò)誤時(shí),表明您的Python環(huán)境缺少pip模塊,下面這篇文章主要給大家介紹了關(guān)于python解決No?module?named?pip問題的兩種方法,需要的朋友可以參考下2024-01-01