В python 3.5 можно ли предсказать, когда мы получим интернированную строку или когда мы получим копию? Прочитав несколько ответов о переполнении стека по этому вопросу, я обнаружил, что -sometimes-produce/1504848#1504848">этот самый полезный, но все же не исчерпывающий. Затем я просмотрел документы Python, но интернирование не гарантируется. по умолчанию
Обычно имена, используемые в программах Python, автоматически интернируются, а словари, используемые для хранения атрибутов модуля, класса или экземпляра, имеют интернированные ключи.
Итак, мой вопрос касается внутренних intern()
условий, т.е. принятия решения (интернировать строковый литерал или нет): почему один и тот же фрагмент кода работает на одной системе, а не на другой, и по каким правилам автор ответа на упомянутая тема имею в виду, когда говорю
правила, когда это происходит, довольно запутаны
==
и забудьте об этом. В любом случае это детали реализации. - person wim   schedule 04.03.2016==
? Ваш вопрос, когда строка будет интернирована в cpython? Обратите внимание, что это больше не вопрос о python, потому что язык python может даже не иметь интернирования строк. - person wim   schedule 05.03.2016intern
интернировано. Все остальное — это трясина деталей реализации, непоследовательная, потому что нет смысла быть последовательной. - person user2357112 supports Monica   schedule 05.03.2016