Inheriting dictionary

Nat Williams nat.williams at gmail.com
Tue Aug 18 22:27:41 CEST 2009


On Tue, Aug 18, 2009 at 2:44 PM, Pavel Panchekha <pavpanchekha at gmail.com>wrote:

> I want a dictionary that will transparently "inherit" from a parent
> dictionary. So, for example:
>
> """
> a = InheritDict({1: "one", 2: "two", 4: "four"})
> b = InheritDict({3: "three", 4: "foobar"}, inherit_from=a)
>
> a[1] # "one"
> a[4] # "four"
> b[1] # "one"
> b[3] # "three"
> b[4] # "foobar"
> """
>
> I've written something like this in Python already, but I'm wondering
> if something like this already exists, preferably written in C, for
> speed.


Why complicate this with a custom object?  Just use regular dicts and make b
a copy of a.

a = {1: 'one', 2: 'two', 4: 'four'}
b = dict(a)
b[3] = 'three'
b[4] = 'foobar'
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20090818/83cdc8e7/attachment.html>


More information about the Python-list mailing list