diff options
author | Dobatymo <Dobatymo@users.noreply.github.com> | 2022-12-19 10:06:41 +0800 |
---|---|---|
committer | Jannis Weigend (RD-TW) <jannis_weigend@trendmicro.com> | 2023-01-11 15:17:15 +0800 |
commit | 8298971836005486f50337e761fae8627a069084 (patch) | |
tree | 2d173d5b9364b90c46230ccb7cf8063dc80c9e2a | |
parent | 837a3875e5414fecf0c87b565c8b61fde16ed016 (diff) | |
download | natsort-8298971836005486f50337e761fae8627a069084.tar.gz |
only convert input to str if necessary
-rw-r--r-- | natsort/natsort.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/natsort/natsort.py b/natsort/natsort.py index 2038f3e..3904ec5 100644 --- a/natsort/natsort.py +++ b/natsort/natsort.py @@ -9,6 +9,7 @@ The majority of the "work" is defined in utils.py. import platform from functools import partial from operator import itemgetter +from pathlib import PurePath from typing import ( Any, Callable, @@ -669,7 +670,9 @@ def _split_apply( ) -> Iterator[str]: if key is not None: v = key(v) - return utils.path_splitter(str(v)) + if not isinstance(v, (str, PurePath)): + v = str(v) + return utils.path_splitter(v) # Choose the implementation based on the host OS |