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

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

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.