目錄
random庫
random是python自帶庫,使用前導(dǎo)入 import random
即可,無需安裝。
舉例:
import randomprint(random.random()) # 0.8564557389763434print(random.uniform(0, 100)) # 78.19630268831175print(random.randint(0, 100)) # 45print(random.choice('12345')) # 4print(random.choice([1,2,3,4,5])) # 1print(random.choice((1,2,3,4,5))) # 5print(random.sample('12345', 3)) # ['1', '5', '2']print(random.sample([1,2,3,4,5], 3)) # [5, 4, 1]print(random.sample((1,2,3,4,5), 3)) # [4, 5, 1]list = [1, 2, 3, 4, 5]random.shuffle(list)print(list) # [3, 5, 4, 1, 2]print(random.randrange(0,20,5)) # 10
生成一個(gè)指定長度得隨機(jī)字符串
使用random.randint(0,n)
思路:定義一個(gè)基礎(chǔ)字符序列,要產(chǎn)生多長得字符串就循環(huán)調(diào)用多少次random.randint(0,n),n=基礎(chǔ)字符序列得長度,在這個(gè)序列中選擇隨機(jī)位置得字符,然后進(jìn)行拼接返回。
import randomimport stringdef generate_random_str(randomlength=16): """ 生成一個(gè)指定長度得隨機(jī)字符串 """ random_str ='' # 使用string庫中得字母、數(shù)字和標(biāo)點(diǎn)符號(hào)組成一個(gè)基礎(chǔ)字符序列 base_str = string.ascii_letters + string.digits + string.punctuation length =len(base_str) -1 for i in range(randomlength): random_str +=base_str[random.randint(0, length)] return random_strprint(generate_random_str(30)) # T`^7:C?z4h0qd!JpO:MFNB2_GL>dXm
使用random.choice()隨機(jī)選擇
import randomimport stringdef generate_random_str(randomlength=16): """ 生成一個(gè)指定長度得隨機(jī)字符串 """ # 使用string庫中得字母、數(shù)字和標(biāo)點(diǎn)符號(hào)拼接程序列 str_list = [random.choice(string.ascii_letters + string.digits + string.punctuation) for i in range(randomlength)] random_str = ''.join(str_list) return random_strprint(generate_random_str(30)) # ')8D@Bu&1ltf!}HUcI-.;^>Vy[n|V
使用random.simple()隨機(jī)選擇
import randomimport stringdef generate_random_str(randomlength=16): """ 生成一個(gè)指定長度得隨機(jī)字符串 """ # 使用string庫中得字母、數(shù)字和標(biāo)點(diǎn)符號(hào)組成一個(gè)基礎(chǔ)字符序列 base_str = string.ascii_letters + string.digits + string.punctuation str_lst = random.sample(base_str, randomlength) #randomlength<=lenth(base_str) random_str = ''.join(str_lst) return random_str
Faker庫
使用Faker庫可生成各種各樣得偽數(shù)據(jù)(姓名、地址、郵箱、電話、密碼、一段文字、一句話等)。
安裝:pip install faker
導(dǎo)入:from faker import Faker
示例:
from faker import Fakerfk = Faker(locale='zh-Cn')# 姓名print(fk.name()) # 劉娜# 身份證print(fk.ssn()) # 141022195412020845# 手機(jī)號(hào)print(fk.phone_number()) # 18226186826# 郵箱print(fk.email()) # zoujie@example.org
個(gè)人信息類
數(shù)字類
文本、加密類
日期類
地理信息類
from faker import Fakerfk = Faker(locale='zh-Cn')# 從[0,9]中隨機(jī)獲取7位數(shù)字(可重復(fù))print([fk.random_digit() for i in range(7)]) # [2, 0, 7, 8, 2, 3, 2]# 從[0,9]中隨機(jī)獲取7位數(shù)字(不可重復(fù))print([fk.unique.random_digit() for i in range(7)]) # [4, 9, 3, 6, 8, 5, 2]
到此這篇關(guān)于Python生成隨機(jī)數(shù)字和字符詳情得內(nèi)容就介紹到這了,更多相關(guān)Python生成隨機(jī)數(shù)字內(nèi)容請(qǐng)搜索之家以前得內(nèi)容或繼續(xù)瀏覽下面得相關(guān)內(nèi)容希望大家以后多多支持之家!
聲明:所有內(nèi)容來自互聯(lián)網(wǎng)搜索結(jié)果,不保證100%準(zhǔn)確性,僅供參考。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進(jìn)行處理。