python 生成随机数
2020-12-08 13:30
标签:时间 seed dig pat random 修改 dom 数据 star 1,随机生成指定位数的数字字母组合 或者 2,随机生成不包含某些字母或数字的字符 3,生成随机手机号,详见https://blog.csdn.net/z5622139/article/details/79197089 生成随机手机号方法2,详见https://www.cnblogs.com/jiuyigirl/p/7144725.html 函数使用补充说明 1,random是用于生成随机数的,我们可以利用它随机生成数字或者选择字符串,使用如下,详见https://www.cnblogs.com/jiuyigirl/p/7144725.html random.random() 用于生成一个随机浮点数:range[0.0,1.0) random.uniform(a,b) 用于生成一个指定范围内的随机浮点数,a,b为上下限,只要a!=b,就会生成介于两者之间的一个浮点数,若a=b,则生成的浮点数就是a random.randint(a,b) 用于生成一个指定范围内的整数,a为下限,b为上限,生成的随机整数ab,报错 random.randrange([start], stop [,step]) 从指定范围内,按指定基数递增的集合中获取一个随机数,基数缺省值为1 random.choice(sequence) 从序列中获取一个随机元素,参数sequence表示一个有序类型,并不是一种特定类型,泛指list,tuple,字符串等 random.shuffle(x[,random]) 用于将一个列表中的元素打乱 random.sample(sequence,k) 从指定序列中随机获取k个元素作为一个片段返回,sample函数不会修改原有序列 2,Python中有join()和os.path.join()两个函数,具体作用如下: python 生成随机数 标签:时间 seed dig pat random 修改 dom 数据 star 原文地址:https://www.cnblogs.com/xiaozeng6/p/10992215.htmlimport random
import string
import time
from datetime import date,timedelta
class randoms():
# 获取26个大小写字母
letters = string.ascii_letters
# 获取26个小写字母
Lowercase_letters = string.ascii_lowercase
# 获取26个大写字母
Capital = string.ascii_uppercase
# 获取阿拉伯数字
digits = string.digits
def code(self):
# s是小写字母和数字的集合
s = randoms.Lowercase_letters+randoms.digits
#生成28位小写和数字的集合,并将列表转字符串
code=‘‘.join(random.sample(s,28))
print(‘随机code:%s‘%code)
return code
from datetime import date,timedelta
def r_string(self):#生成随机字符串
data="1234567890zxcvbnmlkjhgfdsaqwertyuiop"
#用时间来做随机播种
random.seed(time.time())
#随机选取数据
sa=[]
for i in range(20):
sa.append(random.choice(data))
salt="gp_"+‘‘.join(sa)
print(salt)
# return salt
def tax_code(self):
list_1=[‘I‘,‘O‘,‘Z‘,‘S‘,‘V‘]
list_2=[]
for j in randoms().Capital:
if j not in list_1:
list_2.append(j)
s =‘‘.join(list_2) + randoms().digits
tax_code=‘‘.join(random.sample(s,18))
print(‘随机税号:%s‘%tax_code)
return tax_code
def telephone(self):
# 第二位数字
second = [3, 4, 5, 7, 8][random.randint(0, 4)]
# 第三位数字
third = {
3: random.randint(0, 9),
4: [5, 7, 9][random.randint(0, 2)],
5: [i for i in range(10) if i != 4][random.randint(0, 8)],
7: [i for i in range(10) if i not in [4, 9]][random.randint(0, 7)],
8: random.randint(0, 9),
}[second]
# 最后八位数字
suffix = random.randint(10000000, 99999999)
# 拼接手机号
telephone="1{}{}{}".format(second, third, suffix)
print(‘手机号:%s‘%telephone)
return telephone
def create_telephone(self):
telephone=random.choice([‘139‘, ‘188‘, ‘185‘, ‘136‘, ‘158‘, ‘151‘]) + "".join(
random.choice("0123456789") for i in range(8))
print(telephone)
return telephone
join(): 连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串
os.path.join(): 将多个路径组合后返回