[Python-ideas] Adding str.isascii() ?
steve at pearwood.info
Tue Jan 30 03:00:23 EST 2018
On Tue, Jan 30, 2018 at 03:12:52PM +1000, Nick Coghlan wrote:
> So this is partly an optimisation question:
> - folks want to avoid allocating a bytes object just to throw it away
> - folks want to avoid running the equivalent of "max(map(ord, text))"
> - folks know that CPython (at least) tracks this kind of info
> internally to manage its own storage allocations
> But it's also a readability question: "is_ascii()" and
> "is_UCS2()/is_BMP()" just require knowing what 7-bit ASCII and UCS-2
> (or the basic multilingual plane) *are*, whereas the current ways of
> checking for them require knowing how they *behave*.
Agreed with all of those.
However, given how niche the varieties other than is_ascii() are, I'm
not going to push for them. I use them rarely enough, or on small enough
strings, that doing an O(N) max(string) is not that great a burden. I
can continue using a helper function.
More information about the Python-ideas