angeldp

pass_generator

Aug 18th, 2024
268
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.63 KB | None | 0 0
  1. #Password Generator Project
  2. import random
  3. letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']
  4. numbers = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
  5. symbols = ['!', '#', '$', '%', '&', '(', ')', '*', '+']
  6.  
  7. print("Welcome to the PyPassword Generator!")
  8.  
  9. import random
  10.  
  11. #Hard Level - Order of characters randomised:
  12. #e.g. 4 letter, 2 symbol, 2 number = g^2jk8&P
  13.  
  14. size = int(input("¿Tamaño de la contraseña?\n"))
  15. numbers_n = int(input("¿Cuántos números desea?\n"))
  16. symbols_n = int(input("¿Cuántos simbolos desea?\n"))
  17. letters_n = size - numbers_n - symbols_n
  18. lett = []
  19. numb = []
  20. symb = []
  21. for l in range(0,letters_n + 1):
  22.   lett.append(letters[random.randint(0, len(letters) - 1)])
  23. for n in range(0,numbers_n + 1):
  24.   numb.append(numbers[random.randint(0, len(numbers) - 1)])
  25. for s in range(0, symbols_n + 1):
  26.   symb.append(symbols[random.randint(0, len(symbols) - 1)])
  27. password = []
  28. lista = []
  29. i = 0
  30. while i < size:
  31.   lista.append(i)
  32.   i += 1
  33.   salt = random.randint(0,2)
  34.   if salt == 0:
  35.     if len(lett) > 0:
  36.       password.append(lett.pop())
  37.     else:
  38.       i -= 1
  39.   elif salt == 1:
  40.     if len(numb) > 0:
  41.       password.append(numb.pop())
  42.     else:
  43.       i -= 1
  44.   else:
  45.     if len(symb) > 0:
  46.       password.append(symb.pop())
  47.     else:
  48.       i -= 1
  49. print("Tu contraseña es:")
  50. for letra in password:
  51.   print(letra, end="")
  52. print("\n\nGracias por usar este generador de contraseñas")
Tags: 100DoC
Advertisement
Add Comment
Please, Sign In to add comment