On 1/23/2012 9:25 PM, Chris Rebert wrote:
On Mon, Jan 23, 2012 at 4:38 PM, Chris Angelico<ros...@gmail.com>  wrote:
Python 2 can intern 'str' (bytes) strings (with the eponymous builtin,
and with C API functions), though not unicode. Python 3 does not have
that builtin, nor the C API; I can't find any support for either str
or bytes.

Has it been moved, or is interning as a concept deprecated?

The former, into `sys`:
http://docs.python.org/dev/library/sys.html#sys.intern
Search the "What's New"s in the future.
http://docs.python.org/release/3.1.3/whatsnew/3.0.html#builtins

I think that the devs decided that interning is a minor internal optimization that users generally should not fiddle with (especially how that so much is done automatically anyway*), while having it a builtin made it look like something they should pay attention to.

*I am not sure but what hashes for strings either are or in 3.3 will always be cached.

--
Terry Jan Reedy

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to