Re: [Python] da lista di coppie a dict con lista di valori

2012-09-26 Per discussione Lorenzo Sutton
On 26/09/12 17:45, Marco De Paoli wrote: Il giorno 26 settembre 2012 17:37, Stefano Dal Pra mailto:s.dal...@gmail.com>> ha scritto: Un altro modo puo' essere: >>> base = [(1, 100), (1, 200), (3, 100)] >>> categories = [1, 2, 3] >>> d = {} >>> x = [d.setdefault(x[0],[])

Re: [Python] da lista di coppie a dict con lista di valori

2012-09-26 Per discussione Marco De Paoli
Il giorno 26 settembre 2012 17:37, Stefano Dal Pra ha scritto: > Un altro modo puo' essere: > > >>> base = [(1, 100), (1, 200), (3, 100)] > >>> categories = [1, 2, 3] > >>> d = {} > >>> x = [d.setdefault(x[0],[]).append(x[1]) for x in base] + [ > d.setdefault(n,[]) for n in categories ] > >>> d >

Re: [Python] da lista di coppie a dict con lista di valori

2012-09-26 Per discussione Stefano Dal Pra
2012/9/21 Marco De Paoli : > ciao a tutti, > ho le seguenti liste: > base = [(1, 100), (1, 200), (3, 100)] > categories = [1, 2, 3] > > e vorrei ottenere il seguente dizionario: > result = {1: [100, 200], 2: [], 3: [100]} Un altro modo puo' essere: >>> base = [(1, 100), (1, 200), (3, 100)] >>> ca

Re: [Python] da lista di coppie a dict con lista di valori

2012-09-26 Per discussione Marco De Paoli
Il giorno 24 settembre 2012 21:54, enrico franchi ha scritto: > {k: map(op.itemgetter(1), v) for (k, v) in it.groupby(base, > op.itemgetter(0))} > > Poi non sono completamente convinto che sparare una dict comprehension > cosi' complicata e "funzionale" sia un'ottima idea in codice da > mantenere

Re: [Python] da lista di coppie a dict con lista di valori

2012-09-24 Per discussione enrico franchi
2012/9/21 Marco De Paoli : > 2) ... c'è qualcosa di più pythonico? {k: map(op.itemgetter(1), v) for (k, v) in it.groupby(base, op.itemgetter(0))} Non particolarmente testato... in particolare direi che si basa anche sul fatto che la sopra la lista sia raggruppata per chiave. Ovviamente li manc

Re: [Python] da lista di coppie a dict con lista di valori

2012-09-22 Per discussione Riccardo Lemmi
Marco De Paoli wrote: > Il giorno 21 settembre 2012 15:33, Marco Beri ha > scritto: > >> A me piace di più così: >> >> result = dict((c, []) for c in categories) >> for k, v in base: >> result[k].append(v) >> >> La list comprehension usata per risparmiare il for non mi gusta >> troppo... >>

Re: [Python] da lista di coppie a dict con lista di valori

2012-09-21 Per discussione Marco De Paoli
Il giorno 21 settembre 2012 15:33, Marco Beri ha scritto: > A me piace di più così: > > result = dict((c, []) for c in categories) > for k, v in base: > result[k].append(v) > > La list comprehension usata per risparmiare il for non mi gusta troppo... > yess, molto più leggibile ...in effetti

Re: [Python] da lista di coppie a dict con lista di valori

2012-09-21 Per discussione Marco Beri
2012/9/21 Marco De Paoli > ciao a tutti, > ho le seguenti liste: > base = [(1, 100), (1, 200), (3, 100)] > categories = [1, 2, 3] > > e vorrei ottenere il seguente dizionario: > result = {1: [100, 200], 2: [], 3: [100]} > > In pratica ogni chiave in categories è presente in result eventualmente >

[Python] da lista di coppie a dict con lista di valori

2012-09-21 Per discussione Marco De Paoli
ciao a tutti, ho le seguenti liste: base = [(1, 100), (1, 200), (3, 100)] categories = [1, 2, 3] e vorrei ottenere il seguente dizionario: result = {1: [100, 200], 2: [], 3: [100]} In pratica ogni chiave in categories è presente in result eventualmente con valore lista vuota. Ho pensato alla seg