-
Notifications
You must be signed in to change notification settings - Fork 19
Description
По фидбэку нашего пользователя:
На этом шаге открыл (предварительно пройдя через все стадии принятия) для себя важный момент, про который можно упомянуть в главе 9, где идет про сравнение id объектов при использовании оператора is.
Момент заключается в, видимо, разном выделении памяти интерпретатора Python под объекты при работе в интерактивном режиме (запуск интерпретатора python из командной строки) и при запуске файлов-программ .py.
- В интерактивном режиме:
t1 = (1, 2)
t2 = (1, 2)
print(t1 is t2)
False
- Если записать этот код в файл .py и запустить ее, тогда вывод будет
True
Подробнее описывается тут https://ru.stackoverflow.com/questions/1003018/%D0%9E%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80-is-%D0%B8-%D0%BA%D0%BE%D1%80%D1%82%D0%B5%D0%B6%D0%B8
Таким образом, поведение интерпретатора в интерактивном и скомпилированном режиме различаются, и этот момент важно подчеркнуть, я считаю. А то у вас написано, что id у двух кортежей t1 и t2 - одинаковы, а я упорно в интерактивном режиме получаю idшники разные))