Python中的“开关”

Python中的“开关”

此文适用于Python基础部分
需求:随机生成5位不重复的字符串(简单验证码)
分析:1、字符来源;2、新字符串;3、额外创建一个列表,扮演开关角色

直接上代码吧

import random #导入随机模块
T='' #空字符串T用以存储不重复的字符
s='1234567890QWERTYU@#$%^&**%#!@#+_)IOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm'#字符来源
o=[True]*len(s)#创建一个与s等长的列表o,并将所有元素初始化为True,扮演开关功能
while len(T)<5:#5代表生成字符串的长度,任意值,但不能超过s的长度
    i=random.randint(0,len(s)-1)#生成随机的下标
    if o[i]==True:#从数据源s取出单个字符放进T之前,必须判断o对应位置的值为True,否则不操作
        T+=s[i]#满足条件后取出字符拼接存放在T
        o[i]=False#放入T之后必须把对应的o值改变为False,如此一来达到不取重复值的目的
print(T)#T即为我们要的目标字符串

猜你喜欢

转载自blog.csdn.net/weixin_40135610/article/details/81567409