Genera stringhe casuali in Python
-
Genera stringhe casuali in Python usando i metodi
random.choice()
estring.join()
-
Genera una stringa casuale in Python usando il metodo
uuid.uuid4()
-
Genera una stringa casuale in Python usando il metodo
StringGenerator.render_list()
In questo tutorial, esamineremo vari metodi per generare stringhe casuali in Python. Le tecniche di generazione di stringhe casuali vengono utilizzate per generare nomi utente, password o nomi di file casuali, ecc.
In alcuni casi, abbiamo bisogno di stringhe crittograficamente sicure, ad esempio password o generazione di chiavi casuali. Solo stringhe casuali saranno sufficienti se dobbiamo usare le stringhe casuali come nome utente e nome file casuali, ecc. Discuteremo entrambi i tipi di generazione di stringhe casuali in questo tutorial, che sono spiegati di seguito.
Genera stringhe casuali in Python usando i metodi random.choice()
e string.join()
Il metodo random.choice(seq)
restituisce un elemento scelto casualmente dalla sequenza seq
fornita come input. E il metodo string.join(iterable)
unisce gli elementi di iterable
utilizzando il valore fornito di string
come separatore e restituisce la stringa risultante come output.
Per generare una stringa casuale in Python, dobbiamo fornire la sequenza di caratteri da cui vogliamo che il nostro codice generi la stringa casuale al metodo random.choice()
. La sequenza di input può essere composta da lettere maiuscole, piccoli alfabeti, cifre e segni di punteggiatura, ecc.
Possiamo usare string.ascii_uppercase
e string.ascii_lowercase
rispettivamente per la sequenza di caratteri maiuscoli e piccoli, string.ascii_letters
per entrambi, string.digits
per la sequenza di cifre e string.punctuation
per la sequenza di segni di punteggiatura in Python.
Il codice di esempio sotto mostra come generare il tipo richiesto di stringa casuale usando i metodi random.choice()
e string.join()
in Python.
import string
import random
number_of_strings = 5
length_of_string = 8
for x in range(number_of_strings):
print(
"".join(
random.choice(string.ascii_letters + string.digits)
for _ in range(length_of_string)
)
)
Produzione:
wOy5ezjl
j34JN8By
clA5SNZ6
D8K0eggH
6LjRuYsb
Per generare le stringhe casuali protette crittograficamente, possiamo usare il metodo random.SystemRandom()
, che genera numeri casuali dalle sorgenti del sistema operativo.
Codice di esempio:
import string
import random
number_of_strings = 5
length_of_string = 8
for x in range(number_of_strings):
print(
"".join(
random.SystemRandom().choice(string.ascii_letters + string.digits)
for _ in range(length_of_string)
)
)
Produzione:
PEQBU72q
xuwUInGo
asVWVywB
SAsMRjka
CrbIpuR6
Genera una stringa casuale in Python usando il metodo uuid.uuid4()
Il metodo uuid.uuid4()
genera e restituisce un UUID casuale. L’UUID è un identificatore universalmente univoco e lungo 128 bit utilizzato per identificare le informazioni in un sistema o in una rete.
Questo metodo è utile nel caso in cui desideriamo generare identificatori casuali e univoci dalle stringhe casuali. Il codice di esempio sotto mostra come utilizzare il metodo uuid.uuid4()
per ottenere una stringa casuale in Python.
import uuid
print(uuid.uuid4())
Produzione:
440a93fe-45d7-4ccc-a6ee-baf10ce7388a
Genera una stringa casuale in Python usando il metodo StringGenerator.render_list()
StringGenerator().render_list()
è un modo semplice per generare più stringhe casuali in Python. Il StringGenerator()
accetta l’espressione regolare come input, che definisce i caratteri che dovrebbero essere usati per generare le stringhe casuali. Nel metodo renderlist(len, unique=)
, len
specifica la lunghezza dell’lista di output contenente le stringhe casuali e l’argomento della parola chiave unique
può essere impostato su True
se vogliamo le stringhe di output univoche.
Il modulo StringGenerator
deve essere installato prima per utilizzare questo metodo. Il codice di esempio seguente mostra come utilizzare il metodo StringGenerator.render_list()
per generare stringhe casuali in Python.
from strgen import StringGenerator
StringGenerator("[\l\d]{10}").render_list(3, unique=True)
Produzione:
['m98xQHMlBI', 'V4O8hPMWfh', 'cBJk3XcGny']
Articolo correlato - Python String
- Come controllare una stringa è vuota in modo pitonico
- Converti una stringa in nome variabile in Python
- Come rimuovere gli spazi bianchi in una stringa in Python
- Estrai numeri da una stringa in Python
- Come convertire una stringa in datario in Python
- Come convertire una stringa in minuscola in Python 2 e 3