[Python-ideas] Adding str.isascii() ?
INADA Naoki
songofacandy at gmail.com
Fri Jan 26 03:42:31 EST 2018
Hi.
Currently, int(), str.isdigit(), str.isalnum(), etc... accepts
non-ASCII strings.
>>> s = 123"
>>> s
'123'
>>> s.isdigit()
True
>>> print(ascii(s))
'\uff11\uff12\uff13'
>>> int(s)
123
But sometimes, we want to accept only ascii string. For example,
ipaddress module uses:
_DECIMAL_DIGITS = frozenset('0123456789')
...
if _DECIMAL_DIGITS.issuperset(str):
ref: https://github.com/python/cpython/blob/e76daebc0c8afa3981a4c5a8b54537f756e805de/Lib/ipaddress.py#L491-L494
If str has str.isascii() method, it can be simpler:
`if s.isascii() and s.isdigit():`
I want to add it in Python 3.7 if there are no opposite opinions.
Regrads,
--
INADA Naoki <songofacandy at gmail.com>
More information about the Python-ideas
mailing list