Sono abbastanza nuovo per Python, ma non sono stato in grado di trovare una soluzione al mio problema da nessuna parte.Conteggio della quantità di occorrenze in un elenco di tuple
Voglio contare le occorrenze di una stringa all'interno di un elenco di tuple.
Ecco la lista di tuple:
list1 = [
('12392', 'some string', 'some other string'),
('12392', 'some new string', 'some other string'),
('7862', None, 'some other string')
]
Ho provato questo, ma si limita a stampare 0
for entry in list1:
print list1.count(entry[0])
Come si verifica lo stesso ID due volte nella lista, questo dovrebbe restituire:
2
1
Ho anche provato ad incrementare un contatore per ogni occorrenza dello stesso ID ma non riuscivo a capire bene come te
* MODIFICA: Utilizzando la straordinaria risposta di Eumiro. Mi sono appena reso conto che non ho spiegato l'intero problema. ho effettivamente bisogno la quantità totale di voci che ha un valore superiore a 1. Ma se provo a fare:
for name, value in list1:
if value > 1:
print value
ottengo questo errore:
ValueError: Too many values to unpack
'Counter' lo rende così semplice – jamylak
Grazie! È davvero semplice! Mi sono appena reso conto che non ho spiegato l'intero problema. Ho aggiornato la domanda originale. – mackwerk
@Mackwerk - guarda la mia risposta modificata. – eumiro