Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在windows中将字符串传递给pathlib.Path时获取操作系统错误_Python_Python 3.x_Pathlib_Tech Chat Ml - Fatal编程技术网

Python 在windows中将字符串传递给pathlib.Path时获取操作系统错误

Python 在windows中将字符串传递给pathlib.Path时获取操作系统错误,python,python-3.x,pathlib,tech-chat-ml,Python,Python 3.x,Pathlib,Tech Chat Ml,如何在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 e

如何在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,而不是原始字符串

是否要将普通字符串传递到路径并检查其存在


如何在windows中实现这一点?

常规文本抛出错误,因为
\
是Python中的转义字符,您需要通过将其加倍来转义,如下所示:

src = "C:\\Documents\\Newsletters\\Summer2018.pdf"
原始文本版本不检查转义字符,因此不会抛出错误。

这将起作用

src ="C:\Documents\\Newsletters\Summer2018.pdf"
\N是Python文本,您需要转义\或使用

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

字符串是动态传递的,是否有转义符\在Windows中,我想编码使其在不受操作系统影响的情况下工作。您可以使用此答案的内容来确定脚本在哪个操作系统上运行,但我不知道您是否可以优雅地绕过转义符