2016-03-23 4 views
-1

ich ein seltsames Verhalten von python3 auf Set und Boolesche Werte bemerkt.Incoherent Verhalten von Python in Bezug auf Bool und setzte

>>{True} 
>>type({True}) 
<class 'set'> 

jedoch

>>set(True) 
Traceback (most recent call last): 
File "<stdin>", line 1, in <module> 
TypeError: 'bool' object is not iterable 

Ich bin hier ganz verwirrt.

+0

Die erste ist ein Literal 'set' mit einem Element vom Typ' bool'. Der zweite versucht, ein 'bool' in ein' set' zu werfen - was nicht möglich ist. – AChampion

+0

Es gibt einen guten Hinweis in * 'bool' Objekt ist nicht iterierbar * –

Antwort

1

Der Mengenkonstruktor muss ein iterable, verwenden set((True,)) oder set([True]), Sie versuchen, eine bool in eine set zu werfen, die diesen Fehler wirft. Lesen Sie die docs für weitere Informationen.

Verwandte Themen