giganciprogramowania

Python LD Rozszerzony gotowy Święta 2025

Dec 2nd, 2025
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.87 KB | Source Code | 0 0
  1. import time
  2.  
  3. grafikaSwiateczna = r"""     /o\                *
  4.    /o *\      _       /o\
  5.   / o o \   _|_|_    /o *\
  6.  / o *  o\ \ (") Y  /* o o\
  7. /o  * o o \ '(_:_)' /o * *  \
  8. '----. .----'(_____)'---. .---'"""
  9.  
  10. print(grafikaSwiateczna)
  11. time.sleep(2)
  12.  
  13. #Komunikaty
  14. HASLO_BARDZO_MOCNE='Podane hasło jest bardzo mocne ponieważ jest długie, zawiera duże, małe litery, cyfry i znaki specjalne'
  15. HASLO_MOCNE='Podane hasło jest mocne ponieważ jest dość długie, zawiera duże litery lub małe litery lub cyfry'
  16. HASLO_SLABE='Podane hasło jest słabe ponieważ jest za krótkie'
  17. HASLO_POPULARNE='Wygląda na to że twoje hasło to popularna sekwencja, hasło jest mało unikatowe, zmień je!'
  18.  
  19. haslo=input("Podaj hasło, które chcesz sprawdzić: ")
  20. wielkieLitery=0
  21. maleLitery=0
  22. cyfry=0
  23. znakiSpecjalne=0
  24. listaZnakow=[]
  25.  
  26. for znak in haslo:
  27.     if znak.isupper():
  28.         wielkieLitery+=1
  29.     elif znak.islower():
  30.         maleLitery+=1
  31.     elif znak.isdigit():
  32.         cyfry+=1
  33.     else:
  34.         znakiSpecjalne+=1
  35.  
  36.     if znak not in listaZnakow:
  37.         listaZnakow.append(znak)
  38.        
  39. print('###############Analiza hasła###############')
  40. print(f'Długość hasła: {str(len(haslo))} \n'
  41. f'Liczba wielkich liter: {str(wielkieLitery)} \n'
  42. f'Liczba małych liter: {str(maleLitery)} \n'
  43. f'Liczba cyfr: {str(cyfry)} \n'
  44. f'Liczba znaków specjalnych: {str(znakiSpecjalne)} \n'
  45. f'Liczba unikatowych znaków: {str(len(listaZnakow))}')
  46.  
  47.  
  48. procentUnikatow= len(listaZnakow)*100 /len(haslo)
  49. if len(haslo)>=14 and procentUnikatow >= 40 and wielkieLitery !=0 and maleLitery !=0 and cyfry !=0 and znakiSpecjalne !=0:
  50.     print(HASLO_BARDZO_MOCNE)
  51. elif len(haslo)<14 and len(haslo)>=8 and procentUnikatow >= 40 and wielkieLitery !=0 and maleLitery !=0 and cyfry !=0:
  52.     print(HASLO_MOCNE)
  53. elif len(haslo)<8:
  54.     print(HASLO_SLABE)
  55. else:
  56.     print(HASLO_POPULARNE)
Add Comment
Please, Sign In to add comment