Skip to content

Improve the performance of ntpath.expanduser() #117686

@nineteendo

Description

@nineteendo

Feature or enhancement

Proposal:

In ntpath.expanduser(), _get_bothseps() is called in every loop iteration. It should be assigned instead:

 if isinstance(path, bytes):
+    seps = b'\\/'
     tilde = b'~'
 else:
+    seps = '\\/'
     tilde = '~'
 if not path.startswith(tilde):
     return path
 i, n = 1, len(path)
-while i < n and path[i] not in _get_bothseps(path):
+while i < n and path[i] not in seps:
     i += 1

Has this already been discussed elsewhere?

This is a minor feature, which does not need previous discussion elsewhere

Links to previous discussion of this feature:

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    stdlibPython modules in the Lib dirtype-featureA feature request or enhancement

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions