14446
Вопросы про Python для чайников. Cпам и троллинг неприемлем. Частозадаваемые вопросы: https://github.com/ru-python-beginners/faq/blob/master/README.md Правила группы: https://t.me/ru_python_beginners/1649981
Ну наверное со стороны того кто пишет тесты надо добавлять и случаи где надо вернуть false
Читать полностью…
А вот == насколько я понимаю это хз что. Можно как нравится воротить
Читать полностью…
Чтобы достоверно проверить равенство ссылок есть object.ReferenceEquals
Читать полностью…
традиция писать is None возникла из-за всяких ORM, numpy и прочих библиотек которые креативно переопределяют ==
Что лишний раз подтверждает, что не фиг ждать стабильности от не описанного поведения.
Читать полностью…
Если бы я отвечал за питон3.0, я бы is переименовал бы во что-нибудь более длинное и страшное
>>> a = (1,) + (2, 3)Читать полностью…
>>> b = (1, 2) + (3,)
>>> a is b
False
>>> a == b
True
>>> a, b
((1, 2, 3), (1, 2, 3))
То что реализовала прошлая версия + то что договорились добавить или поменять
Читать полностью…
граница очень чёткая: реализация существует, а спека — нет
Читать полностью…
Мне кажется в питоне очень условная граница между спекой и реализацией
Читать полностью…
Вот тут не помню гарантирует ли нам спека что пустой кортеж это синглтон?
Читать полностью…
Речь о том что такое поведение явно не прописано и может меняться в зависимости от версии, исполнителя и конкретного билда
Читать полностью…
Я помню на кодеварс был модный чит, когда в кодгольфе возвращали объект с eq возвращающим True. Проходили все тесты.
Читать полностью…
Ну ладно семантика все же есть, Equals подразумевает именно сравнение по значению если оно есть
Читать полностью…
В шарпе кстати и Equals (для которого как я помню нужен специальный интерфейс в идеале) и == переопределяются и в общем случае не имеют конкретной семантики
Читать полностью…
можно кстати оператор isNone добавить чисто для сравнения с None
а то слишком хорошее слово для очень нишевого оператора
Читать полностью…
>>> (1, 2) + (3,) is (1,) + (2, 3)
<python-input-0>:1: SyntaxWarning: "is" with 'tuple' literal. Did you mean "=="?
>>> True
Если спеки нет, то что тогда реализует cpython? 🤔
Читать полностью…
Блин, а где об этом можно поподробнее почитать?
Читать полностью…
да это просто были мои рассуждения. Не буду же я говорить "Я не понял", сразу же бы последовал встречный вопрос "Что именно ты не понял?"
Читать полностью…