ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Linux + Python 的第七天

2022-06-19 19:32:24  阅读:194  来源: 互联网

标签:abcdefghijklmnopqrstuvwxyz string Python random number choice Linux Out 第七天


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

标签:abcdefghijklmnopqrstuvwxyz,string,Python,random,number,choice,Linux,Out,第七天
来源: https://www.cnblogs.com/tanukisama/p/16391153.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有