unique values of a Dictionary list (removing duplicate elements of a list)

Chad Kellerman sunckell at gmail.com
Fri May 21 08:07:49 EDT 2010


On Fri, May 21, 2010 at 7:50 AM, Peter Otten <__peter__ at web.de> wrote:

> Chad Kellerman wrote:
>
> > Python users,
> >       I am parsing an AIX trace file and creating a dictionary containing
> > keys (PIDS) and values (a list of TIDS).  With PIDS being unique process
> > ids
> > and TIDS, being a list of thread ids.  My function populates the keys so
> > that they are unique, but my list contains duplicates.
> >
> >      Can someone point me in the right direction so that my dictionary
> >      value
> > does not contain duplicate elements?
> >
> >
> > here is what I got.
> >
> > --------------<portion of code that is relevant>------------------
> >
> > pidtids  = {}
> >
> > # --- function to add pid and tid to a dictionary
> > def addpidtids(pid,tid):
> >     pidtids.setdefault(pid,[]).append(tid)
>
> Use a set instead of a list (and maybe a defaultdict):
>
> from collections import defaultdict
>
> pidtids = defaultdict(set)
>
> def addpidtids(pid, tid):
>    pidtids[pid].add(tid)
>
> Peter
>

Thanks.  I guess I should have posted this in my original question.

I'm on 2.4.3  looks like defautldict is new in 2.5.

I'll see if I can upgrade.

Thanks again.



>
> --
> http://mail.python.org/mailman/listinfo/python-list
>



-- 
A grasshopper walks into a bar and the bartender says "Hey, we have a drink
named after you." And the grasshopper says "Really, You have a drink named
Murray?"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20100521/8aa41540/attachment.html>


More information about the Python-list mailing list