libri-javascript-python

Continuiamo a parlare di numeri random e metodi in Python.

Numeri random e metodi in Python – choice()

Il metodo choice consente di estrarre a caso un elemento della lista o anche della tupla.

Allora potremmo modificare il gioco della morra cinese, che potete consultare a questo link morra cinese in python, utilizzando choice.

morra=('sasso', 'carta', 'forbice')

print(random.choice(morra))

Provate quindi a modificare tutto il gioco utilizzando questo metodo.


Vi ricordo inoltre che potete utilizzare from, come spiegato nellae lezioni precedenti e dunque:

from random import choice

morra=('sasso', 'carta', 'forbice')

print(choice(morra))


Il metodo choice può anche essere utilizzato per estrarre lettere da una stringa ad esempio:

frase='Coding'

print(random.choice(frase))

Il metodo choice può essere utile per generare delle password, come vedremo nei prossimi tutorial.


choices()

Continuiamo a parlare di numeri random e metodi in Python introducendo un altro metodo, choices che ritorna una lista di valori.

Facciamo dunque un esempio:

voti=[4,6,7]

print(random.choices(voti, k=7))

In questo caso ritorna una lista di 7 valori a caso tra 4, 6 e 7.

Facciamo quindi un altro esempio:

voti=[4,6,7]

print(random.choices(voti, weights=[1,8,1], k=10))

In questo caso si ha un elenco di 10 elementi, con possibilità 8 volte maggiore che ci sia il numero 6.


Numeri random e metodi in Python – shuffle()

Introduciamo adesso il metodo shuffle che ha il compito di riorganizzare una lista.

Quindi ad esempio:

morra=['sasso', 'carta', 'forbice']

random.shuffle(morra)

print(morra)

Produce come output una nuova sequenza. Chiaramente questo metodo si può applicare alle liste ma non alle tuple, in quanto le tuple contengono valori che non possono essere modificati, nemmeno nella sequenza.

Si può anche specificare una funzione che restituisce sempre lo stesso valore.

Quindi ad esempio creo una funzione di nome ordine che poi vado a richiamare nel metodo shuffle:

def ordine():

return 0

morra=[‘sasso’, ‘carta’, ‘forbice’]

random.shuffle(morra, ordine)

print(morra)


getrandbits()

Continuiamo ancora a parlare di numeri random e metodi in Python introducendo il metodo getrandbits che ritorna un intero della dimensione dei bit specificati.

Ad esempio per 8 bit avremo i numeri tra o e 255, ricordiamo infatti che 2^8=256.

Facciamo dunque un esempio:

print(getrandbits(8))

print(getrandbits(6))

Nel primo caso si generano numeri tra 0 e 255, nel secondo tra 0 e 64.

Ci sono ancora altri metodi da utilizzare per i numeri random in Python, ne parleremo più avanti.

Alcuni link utili

Indice tutorial sul linguaggio Python

1 – Introduzione al linguaggio Python

2 – Le variabili

3 – Operatori aritmetici e di assegnazione in python

4 – Stringhe

5 – Casting

6 – Input e print

7 – Primi esercizi in Python

8 – Errori in Python

9 – Script Python

10 – Scambio di variabili