def f():
chars = ['3','4','6','7','8','9','A','B','C','D','E','F','G','H','J','K','L','M','N','P','Q','R','T','U','V','W','X','Y']
result = ''
for i in range(12):
result += chars
return result
import random
random0 = ('3','4','6','7','8','9','Q','W','E','R','T','Y','U','P','A','D','F','G','H','J','K','L','X','C','V','B','N','M')
random1 = random.choice(random0)
random2 = random.choice(random0)
random3 = random.choice(random0)
random4 = random.choice(random0)
random5 = random.choice(random0)
random6 = random.choice(random0)
random7 = random.choice(random0)
random8 = random.choice(random0)
random9 = random.choice(random0)
random10 = random.choice(random0)
random11 = random.choice(random0)
random12 = random.choice(random0)
print(random1 + random2 + random3 + random4 + random5 + random6 + random7 + random8 + random9 + random10 + random11 + random12)
#求简单方法,感觉我的好累赘啊!新手一个
# python每日一题(111):实现12位随机码。
import random
invitation = "346789CDJMNOPBHUVIWXEFGAQRSTYZ"
code = ""
loop = 12
while loop:
temp = random.choice(invitation)
code += temp
if code.count(temp) == 1:
loop -= 1
else:
code += code[-1]
print(code)
import random
str1 = '346789ABCDEFGHJKLMNPQRTUVWXY'
str2 = ''
for i in range(0,12):
str2 += random.choice(str1)
print(str2)
# python每日一题(111):实现12位随机码。
import random
invitation = "346789ABCDEFGHJKLMNPQRTUVWXY"
code = ""
loop = 12
while loop:
temp = random.choice(invitation)
code = code + temp
if code.count(temp) == 1:
loop -= 1
else:
code = code[:-1] + ""
print(code)
解题思路
1.由数字和字母组成
2.随机生成
3.数字:没有0,1,5 ,字母:没有o,z,s
4.字母为大写
import string
from random import *
characters = string.ascii_letters.upper()+ string.digits
password = "".join(choice(characters) for x in range(randint(8, 16)))
print password
能力理解范围内 只能实现这个。。。 后续补充学习
hh
import random
String = 'abcdefghijklmnopqrstuvwxyzABCDEFGHJKLMNPQRTUVWXY346789'
passwd = ''.join(random.sample(String, 12))
print(passwd)
自己import random
def generate():
str1 ="346789ABCDEFGHJKLMNPQRTUVWXYZ"
gener = random.sample(str1,12)
string =''
for each in gener:
string +=each
return string只能用笨的暴力方法了,{:10_269:}
from random import randint
def password():
list1 = ["3","4","6","7","8","9","A","B","C","D","E","F","G","H","J","K","L","M","N","P","Q","R","T","U","V","W","X","Y","Z"]
str1 = ''
i = 0
while i<12:
i+=1
str1 += list1
print(str1)
password()
ddddddd
from random import Random
str = ''
chars = 'ABCDEFGHJKLlMNPQRTUVWXY346789'
length = len(chars) - 1
random = Random()
for i in range(12):
str+=chars
print(str)
import random
def RandomMsg():
tmp = random.randint(0,9)
tmp2 = chr(random.randint(65,90))
s = str(tmp) + str(tmp2)
return s
s3 = ""
while len(s3)<12:
s2 = random.choice(RandomMsg())
if s2 in ['1','I','0','O','5','S','2','Z']:
continue
s3 += s2
print(s3)
import random
num = random.choices("346789ABCDEFGHJKLMNPQRTUVWXY",K=12)
for i in num:
print(i, end='')
import random
num = random.choices('346789ABCDEFGHJKLMNPQRTUVWXY',k=12)
for i in num:
print(i,end='')
from random import randint
def activationCode():
sourcestr = '346789ABCDEFGHJKLMNPQRTUVWXY'
activecodelist = []
for i in xrange(12):
inx = randint(0, 27)
activecodelist.append(sourcestr)
return ''.join(activecodelist)
铁棍阿童木 发表于 2017-10-9 22:03
万一你的这个验证码中有某个字母重复,你这个不就奔溃了吗
import string, random
s = (string.digits+string.ascii_uppercase)
n=]
print(''.join(random.choice(n)for i in range(12)))
import random as r
leng=r.randint(8,14)#验证码的长度为8—14个单位长度
c=[3,4,6,7,8,9,'A','B','C','D','E','F','G','H','J','K',
'L','M','N','P','Q','R','T','U','V','W','X','Y']
i=0
result=''
while i<leng:
t=r.choice(c)
result+=str(t)
i+=1
else:
print(result)
===================== RESTART: D:\Python36-32\caogao.py =====================
MAVD9LKK8EWGK4
>>>
===================== RESTART: D:\Python36-32\caogao.py =====================
74Y8W3VD
>>>
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import random
li = []
"""
##生成随机验证码小代码
"""
for i in range(12): #验证码长度控制
num = random.randrange(0,4) #获取随机数字
if num == 1 or num == 3: #验证码随机插入数字组合
temp = random.randrange(1,9)#去除0
li.append(str(temp))#将整形转换为字符串
else:
temp = random.randrange(65, 91)
c = chr(temp) #十进制转换为字符,参考ASCII表
li.append(c)
if c == 'O': #去除O
li.remove(c)
result = "".join(li) #列表仅能将字符串进行拼接
print(result)