pathlib:路径和字符串之间的交互的干净解决方案?

时间:2019-12-10 18:33:16

标签: python string pathlib

因此,这个问题可能有点含糊/过于笼统,但是:

我真的很喜欢Pathlib,但是每当使用它时,我都会感到烦恼,因为它很容易失去对对象是路径还是字符串的跟踪。

例如,这是我遇到的常见模式:

from pathlib import Path
from external_package import bar  # takes strings as filepaths

def foo(filepath: Path):  # takes Paths as filepaths
    out = do_something_with(filepath)
    return out

fpath = Path("/my/file/location.whatever")
foo(fpath)
bar(fpath)  # raises TypeError, have to convert to str first

因此,即使我喜欢它的干净程度,使用Pathlib进行所有操作还是很烦人的,因为许多外部程序包仅将字符串用作其文件路径。我最终不得不不断地调用str(fpath)或使用isinstance进行检查,这会通过样板类型检查阻塞我的代码。

有人遇到这种普遍的烦恼并找到了一个好的解决方案吗?

0 个答案:

没有答案