|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
import random
def generate(check_num=4):
temp=[]
for i in range(check_num):
choice=random.randint(1,3)
if choice==1:
temp.append(random.choice("0123456789"))
elif choice==2:
num=random.choice(65,90)
temp.append(chr(num))
elif choice==3:
num=random.choice(97,122)
temp.append(chr(num))
return temp
temp1=generate()
print("生成4位随机验证码:",temp1)
temp2=generate(5)
print("生成4位随机验证码:",temp2)
temp3=generate(5)
print("随机码",temp3)
错误翻译:
选择列表需要定位(2)是给定的,但3题元
不太理解这个问题
本帖最后由 jackz007 于 2019-5-16 02:37 编辑
random.choice(v) 参数 v 应该是一个序列(字符串、元组或列表),与楼主在代码中给出的参数不符,所以,下面两句需要修改:
- num=random.choice(65,90)
- . . . . . .
- num=random.choice(97,122)
复制代码
应该改用 random.randint() 才对:
- num=random.randint(65,90)
- . . . . . .
- num=random.randint(97,122)
复制代码
另外,函数 generate() 返回的是列表,打印出来不美观
- def generate(check_num=4):
- . . . . . .
- return temp
复制代码
建议改成返回字符串
- def generate(check_num=4):
- . . . . . .
- return '' . join(temp)
复制代码
|
|