Python Error

Peter Otten __peter__ at web.de
Sun Jul 29 07:08:57 EDT 2012


subhabangalore at gmail.com wrote:
> Dear Group,
>> I was trying to convert the list to a set, with the following code:
>> 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'
>> please let me know how may I resolve.
>> And sometimes some good running program gives error all on a sudden with
> no parameter changed, how may I debug it?

Add a print statement before the offending line:
print list1
set1 = set(list1)
You will see that list1 contains another list, e. g. this works...
>>> list1 = ["alpha", "beta"] 
>>> set(list1) 
set(['alpha', 'beta']) 
...while this doesn't:
>>> list1 = ["alpha", ["beta"]] 
>>> set(list1) 
Traceback (most recent call last): 
 File "<stdin>", line 1, in <module> 
TypeError: unhashable type: 'list' 


More information about the Python-list mailing list

AltStyle によって変換されたページ (->オリジナル) /