Linux + Python 的第七天

1、需求描述
1、允许用户选3次
2、每次20个车牌供人选择
3、京[A-Z]-[xxxxx],数字加字母的方式组合。
2、知识拓展
# random模块
In [1]: import random
In [2]: random.choice("abcdefghijklmnopqrstuvwxyz")
Out[2]: 'f'
In [3]: random.choice("abcdefghijklmnopqrstuvwxyz")
Out[3]: 'f'
In [4]: random.choice("abcdefghijklmnopqrstuvwxyz")
Out[4]: 'e'
In [5]: n = "abcdefghijklmnopqrstuvwxyz"
In [6]: random.sample(n,2)
Out[6]: ['k', 'e']
In [7]: random.randint(1,10)
Out[7]: 6
    
# string模块
In [8]: import string
In [9]: string.ascii_letters
Out[9]: 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
In [10]: string.ascii_lowercase
Out[10]: 'abcdefghijklmnopqrstuvwxyz'
In [11]: string.ascii_uppercase
Out[11]: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
In [12]: string.punctuation
Out[12]: '!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'
In [13]: string.digits
Out[13]: '0123456789'

# "".join(["a","b","c"])   
In [14]: "".join(["a","b","c"])
Out[14]: 'abc'

3、着手功能实现
# 导入模块。
import random 
import string

# 设置循环次数,可以使用for,不过感觉while帅一点。
count = 0
while count < 3:    

# 为了后面用户进行数据确认,将每次生成的20个随机车牌,塞进列表了,后面用if 加 in进行判断。
    number = []
    for i in range(20):
        
# 使用random生成字符串和字母,n1是大写字母,n2是大写字母+数字,用”“.join进行转换,sample生成规定长度字符。
        n1 = random.choice(string.ascii_uppercase)
        n2 = "".join(random.sample(string.ascii_uppercase+string.digits, 5))
        
# 将生成的元素append到列表、
        number_car = f"{n1}-{n2}"
        number.append(number_car)
        
# print进行相应打印,可以输出为列或者行。
        print(i+1,number_car,end=" ")
        #print()

# 用户对已经选择的进行判断,加入.strip去除字符前后空格。
    choice = input("insert you choice : ").strip()
    if choice in number:
        print(f"You choice is {n1}-{n2}" )
        exit("sa yo na la  ")
    else:
        print(f"{n1}-{n2} is unlegal")
    count += 1
开始运行...
1 N-ODS7J 
2 K-TVE07 
3 T-DSWGI 
4 N-QK689 
5 U-R8GEA 
6 N-M46Q0 
7 O-V7B8U 
8 X-BG9JO 
9 N-TGPQH 
10 T-3X56B 
11 J-X23WD 
12 I-1ZRJL 
13 I-NMW4H 
14 W-A1N2O 
15 E-MWDL1 
16 E-KMP9W 
17 Q-QAVX1 
18 L-KC4EB 
19 I-MGP8T 
20 A-CQ58V 
1 O-E17PV 
2 T-C5N7M 
3 G-C80PF 
4 O-VMW3X 
5 W-R1364 
6 H-51VMN 
7 A-1MB3L 
8 I-TW60O 
9 P-9IPXB 
10 G-Q6IHY 
11 E-OUQIB 
12 L-C9DIA 
13 K-EOR7L 
14 Q-ABYE9 
15 O-4YLHI 
16 L-QFG48 
17 Q-0VBO3 
18 M-SIYVE 
19 J-O6YQS 
20 D-0CL8H 
1 N-DQ60N 
2 U-6XROZ 
3 I-WIXSU 
4 J-KB2PF 
5 Q-BPGE2 
6 V-X7YQ8 
7 H-PBCO9 
8 Z-81JSI 
9 M-HQ1UN 
10 O-P0M18 
11 P-1GLH2 
12 O-GPB6A 
13 Q-HN7SP 
14 D-3THYI 
15 C-H8QFM 
16 L-W9Y7N 
17 I-IRB9E 
18 E-DY0WN 
19 D-OBJ8E 
20 E-KN4CA
insert you choice :E-KN4CA
You choice is E-KN4CA
sa yo na la  

运行结束。
posted @ 2022-06-19 19:22  Tanuki_11  阅读(43)  评论(0)    收藏  举报