Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 14, 2016 15:28:46

dmitry_sulin
Зарегистрирован: 2015-09-10
Сообщения: 11
Репутация: +  0  -
Профиль   Отправить e-mail  

1 и True

Если 1 и True это разные объекты, то почему если в множество содержащее 1 добавить True, то ничего не измениться?

Офлайн

#2 Апрель 14, 2016 15:49:44

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

1 и True

dmitry_sulin
А вы попробуйте добавить во множество словарь. Не получается? А почему?
Предлагаю нагуглить самостоятельно.



Отредактировано FishHook (Апрель 14, 2016 15:50:03)

Офлайн

#3 Апрель 14, 2016 15:50:08

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2840
Репутация: +  186  -
Профиль   Отправить e-mail  

1 и True

> Если 1 и True это разные объекты

True это и есть 1, а False 0.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#4 Апрель 14, 2016 15:50:53

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

1 и True

Rodegast
True это и есть 1, а False 0.
нет



Офлайн

#5 Апрель 14, 2016 15:52:38

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2840
Репутация: +  186  -
Профиль   Отправить e-mail  

1 и True

FishHook
нет
Вы не поверите, но всё таки да:
>>> False - True
-1



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Отредактировано Rodegast (Апрель 14, 2016 15:54:01)

Офлайн

#6 Апрель 14, 2016 15:55:18

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

1 и True

Rodegast
Вы не поверите, но всё таки да:
нет не поверю
>>> True is 1
False



Офлайн

#7 Апрель 14, 2016 16:03:38

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2840
Репутация: +  186  -
Профиль   Отправить e-mail  

1 и True

FishHook
нет не поверю
>>> True == 1
True
>>> True == 2
False
>>> False == 1
False
>>> False == 0
True



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Отредактировано Rodegast (Апрель 14, 2016 16:04:13)

Офлайн

#8 Апрель 14, 2016 16:05:29

r00tl3ss
Зарегистрирован: 2016-03-31
Сообщения: 25
Репутация: +  5  -
Профиль   Отправить e-mail  

1 и True

bool это подкласс int
В строковом представлении True и False.
В остальных случаях 1 и 0.

Офлайн

#9 Апрель 14, 2016 16:10:12

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

1 и True

Rodegast
Ну и что?

# -*-coding:utf-8-*-
class bool:
    def __init__(self, i):
        self.__i = i
    def __eq__(self, other):
        return other is self.__i or other is true
true = bool(1)
print(true == 1)
print(true == 2)



Офлайн

#10 Апрель 14, 2016 16:16:09

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

1 и True

a = True
b = 1
print(id(True))
print(id(a))
print(id(1))
print(id(b))
4297151328
4297151328
4297537888
4297537888



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version