一、模块string的简单使用
import string #导入string模块,获取大小写字母、特殊字符、数字等
#获取大小写字母abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
print(string.ascii_letters)
#获取大写字母ABCDEFGHIJKLMNOPQRSTUVWXYZ
print(string.ascii_uppercase)
#获取小写字母abcdefghijklmnopqrstuvwxyz
print(string.ascii_lowercase)
#获取特殊字符 !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
print(string.punctuation)
#获取数字 '0123456789'
print(string.digits)
二、random模块的使用
import random
s="abcdefg"
s1 = random.choice(s) #随机获取其中的一个元素
s2 = random.sample(s,3) #随机获取其中的几个元素,结果是列表
s4 = random.randint(1,100) #获取一个指定范围的随机数
#随机获取列表的值,并拼接成字符串
s3=random.sample([0, 1, 2, 3, 4, 5, 6, 7, 8, 9],3)
s3.append(s1)
print(s3)
print("-".join(["A","1","9"])) #列表里面是str,不能是int类型;拼接符自定义
三、简单练习一下:
'''
功能:生成车牌号
备注:此处不适用random.sample(),因为车牌的数字或字母可以重复
'''
import random #导入随机数模块
import string
# s = "ABCDEFGHIGKLMNOPQRSTUVWXYZ0123456789"
s = string.ascii_uppercase+string.digits
lst=[]
for i in range(5):
s0 = random.choice(string.ascii_uppercase)
s1 = random.choice(s)
lst.append(s1)
num0 = "".join(lst) #列表拼接成字符串
num = f"闽{s0}-{num0}"
print(num) #闽K-RSLL8
#注意:以上只是简单的模拟车牌的生成,为了练习random和string模块。并为考虑车牌的实际编制规则
'''
功能:年会抽奖程序
张三科技有限公司有300名员工,开年会抽检,奖品如下:
一等奖3名:泰国七日游
二等奖6名:iphone手机一台
三等奖30名:保温杯1个
'''
import random
lst=list(range(1,301))
for i in range(30):
num = random.choice(lst)
print(f"恭喜{num}获得了第三等奖! 获得保温杯1个")
lst.remove(num)
for j in range(6):
num = random.choice(lst)
print(f"恭喜{num}获得了第二等奖! 获得iphone手机一台")
lst.remove(num)
for k in range(3):
num = random.choice(lst)
print(f"恭喜{num}获得了第一等奖! 泰国七日游")
lst.remove(num)