Python自学总结(2)

练习前简略学习一下random包和string包

Random模块

通过import导入,常用有如下几样:

import random
import string

##########################
#random模块

# 从字符串中随机选取一个字符,()内可以是变量
random.choice("abcdefg")    

# 从0-100随机一个数字,不包括100
random.randint(0,100)    

# 选取范围内的随机项
# start开始值,stop结束值(不被包含),step间隔值(递增基数)
random.randrange ([start],stop,[step])    

#从列表"abcdefghijkl"中选取5个元素组成新列表
random.sample("abcdefghijkl",5)

##########################
# string模块

# 顺序返回全部大写的字母A-Z
string.ascii_uppercase

# 顺序返回全部小写字母+大写字母a-z + A-Z
string.ascii_letters

# 顺序返回全部小写字母a-z
string.ascii_lowercase

# 顺序返回数字0-9
string.digits

练习1:车牌摇号

用户抽奖要求:

        1. 允许⽤户最多选5次。

        2. 每次放出20个⻋牌供⽤户选择。

车牌格式:津[A-Z]-[xxxxx],其中[xxxxx]可以是数字和字⺟在组合
import random
import string

count = 5

while count > 0:  # 用户可选择五次
    print("还剩 %s 次机会" % count)
    list1 = []
    for i in range(20):  # 每次提供20个号码
        n1 = random.choice(string.ascii_uppercase)  # 生成第一个随机字母
        n2 = "".join(random.sample(string.ascii_uppercase + string.digits, 5))  # 生成后五位数并连成字符串
        print(f"津{n1}-{n2}")    # 格式打印
        list1.append(f"京{n1}-{n2}".strip())     # 去掉首尾空格和回车后加入列表中方便查询
    info = input("输入你喜欢的车牌号:").strip()    # 获取输入时也要去掉空格和回车
    if info in list1:
        print("确认车牌号:%s" % info)
        exit("祝你好运!")
    else:
        print("输入信息不合法")
        count -= 1
        continue

练习2:公司抽奖

抽奖要求:

        1、200名员工每名员工最多只能中一次。

        2、三等奖50人,二等奖10人,一等奖3人,先抽三等奖,再抽二等奖,再抽一等奖。

import random

number = [1]

for i in range(2,200):
    number.append(i)
for i in range(50):
    random1 = random.choice(number)
    print("%s抽中三等奖。" % random1)
    number.remove(random1)
for i in range(10):
    random1 = random.choice(number)
    print("%s抽中二等奖。" % random1)
    number.remove(random1)
for i in range(3):
    random1 = random.choice(number)
    print("%s抽中一等奖。" % random1)
    number.remove(random1)

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值