как я могу исправить pathlib на python 3.5, 3.6, 3.7, чтобы получить ту же функциональность, что и в python 3.8? - PullRequest
0 голосов
/ 17 июня 2020

Я использую pathlib в своем программном обеспечении для разработки библиотек, но, к сожалению, моя матрица travis тормозит, потому что в некоторых более старых python версиях (3.5 - 3.7) pathlib.Path несовместим с новейшей версией 3.8.

* Например, 1002 *, следующее будет работать с python 3.8, но не с 3.6, 3.7 и c. :
>>> path_test_file = pathlib.Path('./tests/mytest.txt')
>>> path_test_file.unlink(missing_ok=True)

Есть ли удобный способ обновить библиотеку pathlib с помощью requrements.txt, pip, et c?

Я также попытался обезьяно исправить pathlib старых версий, но неудачно. - но я не хочу так загромождать свой код. Я бы предпочел включить какой-то модуль и pathlib.Path для обезьяньего патча, если необходимо, и оставить весь другой код как есть - и при этом быть совместимым со старыми python версиями.

Может быть, мне стоит увеличить https://github.com/KenKundert/extended_pathlib/blob/master/extended_pathlib.py

1 Ответ

0 голосов
/ 30 июня 2020

Я просто скопировал файл python3 .8 pathlib в новый пакет и настроил несколько строк, чтобы он мог вести себя как pathlib.

Теперь вы можете использовать все python3 .8 pathlib полезности также в 3.6, 3.7

Вы можете найти его на github или pypi

Отказ от ответственности: я являюсь автором библиотеки pathlib3x.

...