Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #19312

Re: String interning in Python 3 - missing or moved?

From Terry Reedy <tjreedy@udel.edu>
Subject Re: String interning in Python 3 - missing or moved?
Date 2012-01-23 23:18 -0500
References <CAPTjJmr5=8H9pmWMQ1Q==O1DFGe31ykOBXNzQ9YhS+W8aaAxfw@mail.gmail.com> <CAMZYqRQXfLTrwzqma=ryVKmJByzPtfQqQRa8OjGG7d+qZ7KNGA@mail.gmail.com>
Newsgroups comp.lang.python
Message-ID <mailman.5006.1327378738.27778.python-list@python.org> (permalink)

Show all headers | View raw


On 1/23/2012 9:25 PM, Chris Rebert wrote:
> On Mon, Jan 23, 2012 at 4:38 PM, Chris Angelico<rosuav@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

Back to comp.lang.python | Previous | Next | Find similar | Unroll thread


Thread

Re: String interning in Python 3 - missing or moved? Terry Reedy <tjreedy@udel.edu> - 2012-01-23 23:18 -0500

csiph-web