Ce face Constantele modulului string
Modulul string definește câteva constante utile: ascii_lowercase (a-z), ascii_uppercase (A-Z), ascii_letters (ambele), digits (0-9), hexdigits, octdigits, punctuation (semnele de punctuație ASCII), whitespace (spațiu, tab, rând nou etc.) și printable (toate cele de mai sus).
Ele conțin doar caractere ASCII, deci nu includ literele românești cu diacritice. Sunt folosite pentru generarea parolelor, validări simple și curățarea textului.
Exemple
Exemplul 1: Valorile constantelor
import string
print(string.ascii_lowercase)
print(string.ascii_uppercase)
print(string.digits, string.hexdigits, string.octdigits)
print(string.punctuation)
print(repr(string.whitespace))
print(len(string.ascii_letters), len(string.printable))
Rezultat
abcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLMNOPQRSTUVWXYZ
0123456789 0123456789abcdefABCDEF 01234567
!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
' \t\n\r\x0b\x0c'
52 100
Exemplul 2: Parolă aleatoare
import secrets, string
alfabet = string.ascii_letters + string.digits
print("".join(secrets.choice(alfabet) for _ in range(12)))
Rezultat posibil (diferă la fiecare rulare)
q7RkT2mZx9bL
Exemplul 3: Eliminarea semnelor de punctuație
import string
text = "Salut, lume! Ce faci?"
print(text.translate(str.maketrans("", "", string.punctuation)))
Rezultat
Salut lume Ce faci
Greșeli frecvente
- Folosești
string.ascii_lettersca să verifici litere românești:"ș" in string.ascii_lettersesteFalse. Foloseștestr.isalpha().
Comenzi înrudite
str.translate() și str.maketrans(): Înlocuiește sau șterge mai multe caractere deodată, după un tabel de traducere.str.isalpha(), isalnum(), isascii(), isspace(), isprintable(), isidentifier(): Verifică ce fel de caractere conține un text: doar litere, litere și cifre, doar ASCII, doar spații etc.random.choice() și random.choices(): Alege aleator un element dintr-o listă, sau k elemente, cu ponderi opționale.