将字符串传递给 windows 中的 pathlib.Path 时出现 OS 错误

Getting OS Error when passing string to pathlib.Path in windows

如何将字符串传递给 Python3 中的 pathlib.Path。 我在 Path() 中动态传递正常的 windows 路径。但它正在抛出错误。

片段如下:

src = "C:\Documents\Newsletters\Summer2018.pdf"
rsrc = r"C:\Documents\Newsletters\Summer2018.pdf"
s = pathlib.Path(src)
rs = pathlib.Path(rsrc)

print(s.exists())  #  throws error

print(rs.exists()) # returns True

我想将普通字符串传递给 Path,而不是原始字符串。

有没有办法将普通字符串传递给 Path 并检查它是否存在,

如何在 windows 中实现?

常规文本抛出错误,因为 \ 是 Python 中的转义字符,您需要像这样将其加倍来转义它:

src = "C:\Documents\Newsletters\Summer2018.pdf"

原始文本版本不检查转义字符,因此不会引发错误。

这会起作用

src ="C:\Documents\Newsletters\Summer2018.pdf"

\N 是一个 Python 字面量,你需要转义 \ 或使用

r"C:\Documents\Newsletters\Summer2018.pdf"