Python - Почему мой недавно объединенный набор не возвращает значение: True - PullRequest
0 голосов
/ 06 марта 2020

Просто очень любопытно, пробежаться по некоторым базовым c понятиям и поинтересоваться вашей дружеской помощью.

Мне действительно просто интересно, почему мой недавно объединенный / объединенный / объединенный набор не возвращает мое значение True, как ожидалось, но вернул мое значение False.

У меня есть следующий код:

mySet1 = {1, 2, "Hello}

mySet2 = {"World!", 2.5, True, False}

myUnion = mySet1.union(mySet2)

print (myUnion)

Спасибо за любую помощь заранее:)

Ответы [ 2 ]

1 голос
/ 06 марта 2020

Это связано с базовыми определениями True и False.

>>> {True, 1}
{True}
>>> {False, 0}
{False}

Обратите внимание, что это нормально, потому что вы все еще можете проверить наличие этих записей:

>>> 1 in {True, 1}
True
>>> 0 in {False, 0}
True

>>> 1 in {True}
True
>>> 0 in {False}
True
0 голосов
/ 06 марта 2020

Это потому, что True равно 1 как целое число.

True и равно 1.

Если вы удалите 1 из mySet1, будет отображаться True.

...