updating dictionaries from/to dictionaries
ironfroggy at gmail.com
Mon Aug 11 10:24:11 CEST 2008
for k in foo:
foo[k] += bar.get(k, 0)
On Mon, Aug 11, 2008 at 3:27 AM, Brandon <your.master at gmail.com> wrote:
> Hi all,
> I am not altogether experienced in Python, but I haven't been able to
> find a good example of the syntax that I'm looking for in any tutorial
> that I've seen. Hope somebody can point me in the right direction.
> This should be pretty simple: I have two dictionaries, foo and bar.
> I am certain that all keys in bar belong to foo as well, but I also
> know that not all keys in foo exist in bar. All the keys in both foo
> and bar are tuples (in the bigram form ('word1', 'word2)). I have to
> prime foo so that each key has a value of 1. The values for the keys
> in bar are variable integers. All I want to do is run a loop through
> foo, match any of its keys that also exist in bar, and add those key's
> values in bar to the preexisting value of 1 for the corresponding key
> in foo. So in the end the key,value pairs in foo won't necessarily
> be, for example, 'tuple1: 1', but also 'tuple2: 31' if tuple2 had a
> value of 30 in bar.
> I *think* the get method might work, but I'm not sure that it can work
> on two dictionaries the way that I'm getting at. I thought that
> converting the dictionaries to lists might work, but I can't see a way
> yet to match the tuple key as x in one list for all y in the
> other list. There's just got to be a better way!
> Thanks for any help,
> (trying hard to be Pythonic but isn't there yet)
Read my blog! I depend on your acceptance of my opinion! I am interesting!
More information about the Python-list