Questo modulo fornisce la codifica e la decodifica dei dati specificati dalla RFC 3548. Questo standard definisce gli algoritmi Base16, Base32 e Base64 per la codifica e la decodifica di stringhe binarie arbitrarie in stringhe di testo che possono essere tranquillamente spedite tramite email, usate come parti di URL o incluse come parti di richieste HTTP POST. L'algoritmo di codifica non è il medesimo usato dal programma uuencode.
Il modulo fornisce due diverse interfacce. L'interfaccia moderna supporta la codifica e la decodifica di oggetti stringa usando tre alfabeti. La vecchia interfaccia ereditata fornisce la codifica e la decodifica per e da oggetti simile a file come fossero stringhe, ma usa solamente l'alfabeto Base64 standard.
L'interfaccia moderna fornisce:
s[, altchars]) |
s è la stringa da codificare. Il facoltativo altchars
deve essere una stringa di lunghezza minima 2
(ulteriori
caratteri vengono ignorati) che specifichi un alfabeto alternativo per
i caratteri +
e /
. Questo consente ad applicazioni, per
esempio, di generare delle URL o filesystem sicuramente in stringhe
Base64. Il valore predefinito è None, per cui viene usato
l'alfabeto Base64 standard.
La stringa codificata viene restituita.
s[, altchars]) |
s è la stringa da decodificare. Il facoltativo altchars
deve essere una stringa di lunghezza minima 2
(ulteriori
caratteri vengono ignorati) che specifichi un alfabeto alternativo da
usare al posto dei caratteri +
e /
.
La stringa decodificata viene restituita. Viene sollevata un'eccezione TypeError se s non viene riempita correttamente o se nella stringa vi sono contenuti caratteri non alfabetici.
s) |
s) |
s) |
+
con -
e /
con _
nell'alfabeto Base64 standard.
s) |
+
con -
e /
con _
nell'alfabeto Base64 standard.
s) |
s[, casefold[, map01]]) |
s è la stringa da decodificare. Il facoltativo casefold è un'opzione che specifica se un alfabeto in minuscolo sia accettabile in input. Per questioni di sicurezza, il valore predefinito viene impostato a False.
La RFC 3548 permette una facoltativa mappatura della cifra 0 (zero) con la lettera O (oh) e la sempre facoltativa mappatura della cifra 1 (uno) sia alla lettera I (eye) o la lettera (el). L'argomento facoltativo map01, quando non None, specifica quale lettera della cifra 1 deve essere mappata (quando map01 non è None, la cifra 0 è sempre mappata alla lettera O). Per questioni di sicurezza il valore predefinito è None, così 0 ed 1 non vengono permessi in input.
La stringa decodificata viene restituita. Viene sollevata un'eccezione TypeError se s non viene riempita correttamente o se nella stringa vi sono contenuti caratteri non alfabetici.
s) |
s è la stringa da codificare. La stringa codificata viene restituita.
s[, casefold]) |
s è la stringa da decodificare. Il facoltativo casefold è un'opzione che specifica se un alfabeto in minuscolo sia accettabile in input. Per questioni di sicurezza, il valore predefinito viene impostato a False.
La stringa decodificata viene restituita. Viene sollevata un'eccezione TypeError se s non viene riempita correttamente o se nella stringa vi sono contenuti caratteri non alfabetici.
La vecchia interfaccia ereditata:
input, output) |
input.read()
non restituisce una stringa
vuota.
s) |
input, output) |
input.read()
non restituirà una stringa
vuota. encode() restituisce i dati codificati insieme ad
un carattere di fine riga ('\n'
).
s) |
'\n'
).
Vedete anche: