Специально для более старых версий Git большинство предложений не будут работать так хорошо. Если это так, я бы поместил отдельный .gitignore в каталог, где я хочу, чтобы контент включался независимо от других параметров и позволял там что нужно.
Например: /.gitignore
# ignore all .dll files
*.dll
/dependency_files/.gitignore
# include everything
!*
Таким образом, все файлы / dependency_files (даже DLL-файлы) включены в комплект.
Как и все сказанное, он разрешает текущий путь и, следовательно, существует, но вот почему
pathlib.Path является acutally подклассом pathlib.PurePath , который принимает текущий каталог, когда pathsegments
(аргумент) пуст (эквивалентен ''
).
Вы можете доказать, что это эмпирически, [3]
from pathlib import PurePath
print(PurePath())
>>>> .
Я предполагаю, что преимущество в определении пути ('') будет таким же, как и Path ('.').
Исправить. Несмотря на то, что я не создатель этой библиотеки, я предполагаю, что это для синтаксиса и логических причин. Действительно, люди часто хотят ссылаться на текущий каталог, чтобы вычислить что-то динамически. Поэтому по той же причине
.
указывает на текущий каталог, создатель lib, вероятно, хотел бы написать вам что-то вроде этого>>>> p = Path() # or possibly Path('.') >>> [x for x in p.iterdir() if x.is_dir()]
, в котором будут перечислены подкаталоги.
В основном, см. Это как по умолчанию . Логично, что путь по умолчанию, возвращаемый
Path()
, был текущим каталогом. Таким образом, логически, пустое строковое значение должно иметь такое же поведение.