logo

Python | Ustvari naključni niz dane dolžine

Težava z generiranjem naključnih števil je precej pogosta, vendar včasih imamo aplikacije, ki zahtevajo, da to izboljšamo in zagotovimo nekatere funkcije generiranja naključnega niza števk in abeced za aplikacije, kot so gesla. Razpravljajmo o nekaterih načinih, na katere je to mogoče izvesti v Pythonu. Tukaj bomo uporabili naključno generiranje nizov z velikimi črkami in števkami

1. način: ustvarite naključni niz z uporabo random.choices()

to random.choices() funkcija naključnega modula nam lahko pomaga doseči to nalogo in nudi enovrstično alternativo celotni zanki, ki bi lahko bila potrebna za to posebno nalogo. Deluje s Pythonom> v3.6.



  • String.ascii_uppercase – Vrne niz z velikimi črkami.
  • String.digits – Vrne niz s števkami.
  • Niz.ločila – Vrne niz z ločili
  • Niz.ascii_črke – Vrne niz, ki vsebuje različne primere.
  • String.ascii_lowercase – Vrne niz z malimi črkami.

Primer 1: Generiranje naključnega niza z velikimi črkami

Python3








import> string> import> random> # initializing size of string> N>=> 7> # using random.choices()> # generating random strings> res>=> ''.join(random.choices(string.ascii_uppercase>+> >string.digits, k>=>N))> # print result> print>(>'The generated random string : '> +> str>(res))>

>

>

Izhod:

java kodiranje if else stavek
The generated random string : 0D5YE91>

2. primer: ustvarite a naključen niz določene dolžine v malih črkah

Python3




import> string> import> random> # initializing size of string> N>=> 7> # using random.choices()> # generating random strings> res>=> ''.join(random.choices(string.ascii_lowercase>+> >string.digits, k>=>N))> # print result> print>(>'The generated random string : '> +> str>(res))>

>

>

Izhod:

The generated random string : ipxktny>

Primer 3: Generirajte naključni niz dane dolžine z velikimi in malimi črkami

Python3




import> string> import> random> # initializing size of string> N>=> 7> # using random.choices()> # generating random strings> res>=> ''.join(random.choices(string.ascii_letters, k>=>N))> # print result> print>(>'The generated random string : '> +> str>(res))>

>

>

Izhod:

The generated random string : ALpxvmI>

2. način: generirajte naključni niz z uporabo secrets.choice()

Mi lahko Ustvarite naključne nize in gesla v Pythonu z uporabo skrivnosti.izbira(). Za kriptografsko bolj varna naključna števila je mogoče uporabiti to funkcijo tajnega modula, saj je njegov notranji algoritem zasnovan tako, da ustvarja manj predvidljiva naključna števila.

Python3




import> secrets> import> string> # initializing size of string> N>=> 7> # using secrets.choice()> # generating random strings> res>=> ''.join(secrets.choice(string.ascii_uppercase>+> string.digits)> >for> i>in> range>(N))> # print result> print>(>'The generated random string : '> +> str>(res))>

>

>

Izhod:

The generated random string : T7HPKVR>

Pristop :

Uvozite potrebne module: naključni in niz.
Definirajte funkcijo z imenom generate_random_string, ki sprejme dolžino parametra za določitev dolžine naključnega niza za generiranje.
Uporabite string.ascii_letters, da dobite vse črke ASCII v malih in velikih črkah.
Uporabite random.choice za naključno izbiro znakov iz črk za dano dolžino niza in jih združite z .join().
Vrni ustvarjeni niz.
Uporabite funkcijo tako, da posredujete želeno dolžino, da ustvarite naključni niz.

Python3




import> random> import> string> def> generate_random_string(length):> ># Get all the ASCII letters in lowercase and uppercase> >letters>=> string.ascii_letters> ># Randomly choose characters from letters for the given length of the string> >random_string>=> ''.join(random.choice(letters)>for> i>in> range>(length))> >return> random_string> # Example usage: generate a random string of length 10> random_string>=> generate_random_string(>10>)> print>(random_string)>

>

>

Izhod

mFPltLThhj>

Časovna kompleksnost: O(n), kjer je n dolžina želenega naključnega niza.

Pomožni prostor: O(n), kjer je n dolžina želenega naključnega niza.