„Próbka większa niż populacja” w pythonie random.sample

tworząc dla mnie prosty generator przejść, zauważyłem, że jeśli chcę, aby moja populacja była tylko cyframi (0-9), co stanowi 10 opcji, jeśli chcę mieć długość powyżej 10, nie użyje żadnej z cyfr więcej niż raz i zwróć błąd „próbka większa niż populacja”.

czy jest możliwe zachowanie kodu, ale dodanie / zmniejszenie linii kodu, aby działało? lub CZY MAM DO UŻYCIA losowego wyboru?

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

questionAnswers(2)

yourAnswerToTheQuestion