Funzioni per Ricerche

Appartenenza

Un certo valore è presente in una struttura dati?

sequenza=[1,8,0,1,1,9,2,8]  # list 
#        (1,8,0,1,1,9,2,8)  # tuple 
#        {1,8,0,1,1,9,2,8}  # set 
#        "18011928"         # str 

x=8                         # x="8"
print(x in sequenza)        # True

x=7                         # x="7"
print(x in sequenza)        # False

Posizione

Quale posizione occupa un certo valore in una struttura dati?
Non esiste la posizione negli insiemi e nei dizionari.

sequenza=[1,8,0,1,1,9,2,8]  # list
#        (1,8,0,1,1,9,2,8)  # tuple
#        "18011928"         # str 

x=8                         # x="8"
print(sequenza.index(x))    # 1

x=7                         # x="7"
print(sequenza.index(x))    # ERRORE!

Se l’elemento non è presente ci sarà un errore.

find()

Il metodo find() delle stringhe restituisce -1.

stringa="18011928" 

c='0' 
print(stringa.find(c))      # 2

c='7' 
print(stringa.find(c))      # -1

Studia gli algoritmi classici per effettuare una ricerca in una struttura dati: sequenziale, con sentinella, binaria.

Numero di occorrenze

Quante volte è presente un certo valore in una struttura dati?
Non esiste la molteplicità negli insiemi e nei dizionari.

sequenza=[1,8,0,1,1,9,2,8]  # list 
#        (1,8,0,1,1,9,2,8)  # tuple 
#         "18011928"        # str

x=8                         # x="8" 
print(sequenza.count(x))    # 2

x=7                         # x="7"
print(sequenza.count(x))    # 0