extending dictonary
InvisibleRoads Patrol
patrol at invisibleroads.com
Fri Dec 11 09:47:13 EST 2009
On Sat, 21 Nov 2009 09:25:38 +0100, nospam <"knutjbj(nospam)"@online.no>
wrote:
> Is there any way to extend the dictonary in such manner that I can
> insert muliplay value to each keys and return one of the value as the
> default value. I would like to have similar syste that I drawed out
below.
>
>
> tree[nucelotide_postionc][nucleotide]=default(value subtree) This should
> be returned when doing lookup without any
> tree[nucelotide_postionc][nucleotide]=Postive value
> tree[nucelotide_postionc][nucleotide]=Negative value
You could use the collections.defaultdict method.
>>> import collections
>>> example1 = collections.defaultdict(int)
>>> example1[1]
0
>>> example2 = collections.defaultdict(list)
>>> example2[1]
[]
>>> example3 = collections.defaultdict(dict)
>>> example3[1]
{}
>>> # Make nested default dictionary
>>> def getNewOuterDictionary():
... return collections.defaultdict(getNewInnerDictionary)
>>> def getNewInnerDictionary():
... return collections.defaultdict([])
>>> example4[1][1]
[]
Hope that helps.
--
Roy Hyunjin Han
http://invisibleroads.com
Training people to become software developers and connecting them to jobs
and projects for local businesses
More information about the Python-list
mailing list