Python Error
subhabangalore at gmail.com
subhabangalore at gmail.com
Sun Jul 29 10:41:47 EDT 2012
On Sunday, July 29, 2012 7:53:59 PM UTC+5:30, Roy Smith wrote:
> In article <81818a9c-60d3-48da-9345-0c0dfd5b25e7 at googlegroups.com>,
>
> subhabangalore at gmail.com wrote:
>
>
>
> > set1=set(list1)
>
> >
>
> > the code was running fine, but all on a sudden started to give the following
>
> > error,
>
> >
>
> > set1=set(list1)
>
> > TypeError: unhashable type: 'list'
>
>
>
> First, make sure you understand what the error means. All the elements
>
> of a set must be hashable. Lists are not hashable because they are
>
> mutable. So, what the error is telling you is that some element of
>
> list1 is itself a list, and therefore not hashable, and thus the set
>
> can't be created.
>
>
>
> I would start by printing list1. If the list is long (or contains
>
> deeply nested structures), just doing "print list1" may result in
>
> something that is difficult to read. In that case, try using pprint
>
> (see the pprint module) to get a nicer display.
>
>
>
> If it's still not obvious, pull out the bigger guns. Try something like:
>
>
>
> for item in list1:
>
> try:
>
> hash(item)
>
> except TypeError:
>
> print "This one can't be hashed: %s" % item
>
>
>
> > And sometimes some good running program gives error all on a sudden with no
>
> > parameter changed
>
>
>
> Well, *something* changed. Assuming nothing truly bizarre like a stray
>
> Higgs Boson flipping a bit in your computer's memory, what you need to
>
> do is figure out what that is. Did you change your code in any way
>
> (having everything under version control helps here)? If not the code,
>
> then what changed about the input?
>
>
>
> If you're sure that both the code and the input are unchanged, that
>
> leaves something in the environment. Did your python interpreter get
>
> upgraded to a newer version? Or your operating system? PYTHONPATH?
>
>
>
> Depending on what your program is doing, it could be something time
>
> based. A different time zone, perhaps? Did daylight savings time just
>
> go into or out of effect where you are? Does it only fail on Sunday?
Hi Roy,
Sorry I overlooked your answer. It fails generally on Sunday. True. How you got it? I recently downloaded Python2.7 64 bit -while I am working on Python3.2.1 64 bit Windows 7 SP1.
Regards,
Subhabrata Banerjee.
More information about the Python-list
mailing list