【发布时间】:2014-01-18 15:14:03
【问题描述】:
为自己创建一个简单的通行证生成器,我注意到如果我希望我的人口仅为数字 (0-9),这总共有 10 个选项,如果我希望我的长度超过 10,它不会再使用任何数字然后一次并返回“样本大于总体”错误。
是否可以维护代码,但添加/减少代码行以使其正常工作?还是我必须使用随机选择?
import string
import random
z=int(raw_input("for: \n numbers only choose 1, \n letters only choose 2, \n letters and numbers choose 3, \n for everything choose 4:"))
if z==1:
x=string.digits
elif z==2:
x=string.letters
elif z==3:
x=string.letters+string.digits
elif z==4:
x=string.letters+string.digits+string.punctuation
else:
print "die in a fire"
y=int(raw_input("How many passwords would you like?:"))
v=int(raw_input("How long would you like the password to be?:"))
for i in range(y):
string=""
for n in random.sample(x,v):
string+=n
print string
ty
【问题讨论】: