Python生成随机数字和字符详情

目录

random库

生成一个指定长度的随机字符串

Faker库

random库

random是python自带库,使用前导入 import random 即可,无需安装。

举例:

import random print(random.random())# 0.8564557389763434 print(random.uniform(0, 100))# 78.19630268831175 print(random.randint(0, 100))# 45 print(random.choice('12345'))# 4 print(random.choice([1,2,3,4,5]))# 1 print(random.choice((1,2,3,4,5)))# 5 print(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 生成一个指定长度的随机字符串

使用random.randint(0,n)

思路:定义一个基础字符序列,要产生多长的字符串就循环调用多少次random.randint(0,n),n=基础字符序列的长度,在这个序列中选择随机位置的字符,然后进行拼接返回。

import random import string def generate_random_str(randomlength=16): """ 生成一个指定长度的随机字符串 """ random_str ='' # 使用string库中的字母、数字和标点符号组成一个基础字符序列 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_str print(generate_random_str(30))# T`^7:C?z4h0qd!JpO:MFNB2_GL>dXm

使用random.choice()随机选择

import random import string def generate_random_str(randomlength=16): """ 生成一个指定长度的随机字符串 """ # 使用string库中的字母、数字和标点符号拼接程序列 str_list = [random.choice(string.ascii_letters + string.digits + string.punctuation) for i in range(randomlength)] random_str = ''.join(str_list) return random_str print(generate_random_str(30))# ')8D@Bu&\1ltf!}HUcI-.;^>Vy[n|V

使用random.simple()随机选择

import random import string def generate_random_str(randomlength=16): """ 生成一个指定长度的随机字符串 """ # 使用string库中的字母、数字和标点符号组成一个基础字符序列 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库可生成各种各样的伪数据(姓名、地址、邮箱、电话、密码、一段文字、一句话等)。
安装:pip install faker
导入:from faker import Faker

示例:

from faker import Faker fk = Faker(locale='zh-Cn') # 姓名 print(fk.name())# 刘娜 # 身份证 print(fk.ssn())# 141022195412020845 # 手机号 print(fk.phone_number())# 18226186826 # 邮箱 print(fk.email())# zoujie@example.org

个人信息类

数字类

文本、加密类

日期类

地理信息类

from faker import Faker fk = Faker(locale='zh-Cn') # 从[0,9]中随机获取7位数字(可重复) print([fk.random_digit() for i in range(7)])# [2, 0, 7, 8, 2, 3, 2] # 从[0,9]中随机获取7位数字(不可重复) print([fk.unique.random_digit() for i in range(7)])# [4, 9, 3, 6, 8, 5, 2]

到此这篇关于Python生成随机数字和字符详情的文章就介绍到这了,更多相关Python生成随机数字内容请搜索易知道(ezd.cc)以前的文章或继续浏览下面的相关文章希望大家以后多多支持易知道(ezd.cc)!

推荐阅读