Duplicate keys in dict?

vsoler vicente.soler at gmail.com
Sun Mar 7 12:13:13 EST 2010


On 7 mar, 17:53, Steven D'Aprano <st... at REMOVE-THIS-
cybersource.com.au> wrote:
> On 2010年3月07日 08:23:13 -0800, vsoler wrote:
> > Hello,
>> > My code snippet reads data from excel ranges. First row and first column
> > are column headers and row headers respectively. After reding the range
> > I build a dict.
>> > ................'A'..............'B'
> > 'ab'............3................5
> > 'cd'............7................2
> > 'cd'............9................1
> > 'ac'............7................2
>> > d={('ab','A'): 3, ('ab','B'): 5, ('cd','A'): 7, ...
>> > However, as you can see there are two rows that start with 'cd', and
> > dicts, AFAIK do not accept duplicates.
> > One of the difficulties I find here is that I want to be able to easily
> > sum all the values for each row key:  'ab', 'cd' and 'ac'. However,
> > using lists inside dicts makes it a difficult issue for me.
>> Given the sample above, what answer do you expect for summing the 'cd'
> row? There are four reasonable answers:
>> 7 + 2 = 9
> 9 + 1 = 10
> 7 +たす 2 +たす 9 +たす 1 = 19
> Error
>> You need to decide what you want to do before asking how to do it.
>> --
> Steven

Steven,
What I need is that sum(('cd','A')) gives me 16, sum(('cd','B')) gives
me 3.
I apologize for not having made it clear.


More information about the Python-list mailing list

AltStyle によって変換されたページ (->オリジナル) /