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 enrico.fran...@gmail.comha 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

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 depao...@gmail.com: 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,

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 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],[]).append(x[1]) for x in base] + [ d.setdefault(n,[]) for n in categories ] d {1:

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 s.dal...@gmail.com 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 =

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 depao...@gmail.com: 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.

[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

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 depao...@gmail.com 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

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 marcob...@gmail.com 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