classification
Title: Add.isascii() to str, bytes and bytearray
Type: enhancement Stage: resolved
Components: Interpreter Core Versions: Python 3.7
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: inada.naoki, vstinner
Priority: normal Keywords: patch

Created on 2018-01-26 11:09 by inada.naoki, last changed 2018-01-28 01:01 by inada.naoki. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 5342 merged inada.naoki, 2018-01-26 11:10
PR 5356 merged inada.naoki, 2018-01-27 05:38
Messages (4)
msg310754 - (view) Author: INADA Naoki (inada.naoki) * (Python committer) Date: 2018-01-26 11:09
int() and str.is*** functions accepts other than ASCII.
But we want to accept only ASCII in some cases.  (e.g. ipaddress module)

We can use try-except to check ASCII, but it's inefficient.

try:
    s.encode('ascii')
except UnicodeEncodeError:
    ascii = False
else:
    ascii = True

CPython can check string is ASCII efficiently.

(Voting on python-ideas ML now)
msg310755 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2018-01-26 11:09
> (Voting on python-ideas ML now)

https://mail.python.org/pipermail/python-ideas/2018-January/048737.html
msg310839 - (view) Author: INADA Naoki (inada.naoki) * (Python committer) Date: 2018-01-27 05:06
New changeset a49ac9902903a798fab4970ccf563c531199c3f8 by INADA Naoki in branch 'master':
bpo-32677: Add .isascii() to str, bytes and bytearray (GH-5342)
https://github.com/python/cpython/commit/a49ac9902903a798fab4970ccf563c531199c3f8
msg310902 - (view) Author: INADA Naoki (inada.naoki) * (Python committer) Date: 2018-01-28 00:59
New changeset bea57060c863d0c3474c79350bd9c557f2ff0e7c by INADA Naoki in branch 'master':
bpo-32677: Optimize str.isascii() (GH-5356)
https://github.com/python/cpython/commit/bea57060c863d0c3474c79350bd9c557f2ff0e7c
History
Date User Action Args
2018-01-28 01:01:04inada.naokisetstatus: open -> closed
resolution: fixed
stage: patch review -> resolved
2018-01-28 00:59:15inada.naokisetmessages: + msg310902
2018-01-27 05:38:09inada.naokisetpull_requests: + pull_request5202
2018-01-27 05:06:23inada.naokisetmessages: + msg310839
2018-01-26 17:06:03inada.naokisettitle: Add str.isascii() -> Add.isascii() to str, bytes and bytearray
2018-01-26 11:10:25inada.naokisetkeywords: + patch
stage: patch review
pull_requests: + pull_request5188
2018-01-26 11:09:44vstinnersetnosy: + vstinner
messages: + msg310755
2018-01-26 11:09:08inada.naokicreate