Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Курс по питону: добавить информацию про работу интерпретатора с выделением ресурсов #71

Open
Microvenator opened this issue Apr 17, 2024 · 2 comments

Comments

@Microvenator
Copy link
Contributor

По фидбэку нашего пользователя:

На этом шаге открыл (предварительно пройдя через все стадии принятия) для себя важный момент, про который можно упомянуть в главе 9, где идет про сравнение id объектов при использовании оператора is.
Момент заключается в, видимо, разном выделении памяти интерпретатора Python под объекты при работе в интерактивном режиме (запуск интерпретатора python из командной строки) и при запуске файлов-программ .py.

  1. В интерактивном режиме:

t1 = (1, 2)
t2 = (1, 2)
print(t1 is t2)
False

  1. Если записать этот код в файл .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шники разные))

@deksden
Copy link

deksden commented Apr 19, 2024

Я так понимаю, это поведение исключительно зависит от реализации.

@Microvenator
Copy link
Contributor Author

Да, безусловно. Просто нужно об этом написать)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants