2017-02-19 57 views
-1

Snippet:печать набор, который содержит истинное

for item in {1, 5.2, 10, 25, True}: 
    print(item) 

Выход:

1 
10 
5.2 
25 

Почему True не получает печататься?

+0

Потому что '1 == True'. –

+0

@MartijnPieters Но наборы могут содержать разнородные типы данных, правильно? 1 - int, тогда как True - bool. –

+0

@ChankeyPathak, попробуйте распечатать набор. –

ответ

1

Потому что 1 и True такие же, поэтому существует только одно значение с момента его набора. Что касается вашего комментария, то набор {2, 2.0} оценивается как set([2.0]), несмотря на то, что их типы разные.

2

True и 1 - в основном такое же значение. Таким образом, после операции установки будет существовать только один.