Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/284.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.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 如何使用Pathlib解析Windows上的服务器路径?_Python_Python 3.x_Path - Fatal编程技术网

Python 如何使用Pathlib解析Windows上的服务器路径?

Python 如何使用Pathlib解析Windows上的服务器路径?,python,python-3.x,path,Python,Python 3.x,Path,所以我有一个指向服务器的路径 \\foo\bar\baz 我正试图用Python的pathlib库将其转换为路径对象,类似于 Path('\\foo').joinpath('bar').joinpath('baz') 尝试使用“path.exists()”查看此路径是否存在,但会发出该路径不存在的信号 我还将路径的起始路径替换为以下相同结果: Path(r'\\foo'), Path('\\\\foo'), Path('\foo) 无论如何输入foo root,在被path解析后打印出的路

所以我有一个指向服务器的路径

\\foo\bar\baz
我正试图用Python的pathlib库将其转换为路径对象,类似于

Path('\\foo').joinpath('bar').joinpath('baz')
尝试使用“path.exists()”查看此路径是否存在,但会发出该路径不存在的信号

我还将路径的起始路径替换为以下相同结果:

Path(r'\\foo'), Path('\\\\foo'), Path('\foo)
无论如何输入foo root,在被path解析后打印出的路径都会显示被解释为的路径

'C:/foo/bar/baz'
但是,当我简单地将os.path.exists中的路径作为原始字符串plop时,该路径被成功找到(使用普通字符串会导致unicode错误)


使用Pathlib是否可以成功解析/解释服务器路径,或者我是否被迫在os.path操作中使用原始字符串?

r'\\foo'
只是不是有效的windows UNC路径,即使存在
foo
。在此之后,您至少需要一个共享名

发件人:

有效的UNC路径必须包含两个或多个路径组件

这将创建一个有效的路径对象,
存在()
将正常工作:

>>> pathlib.Path(r'\\foo\bar').joinpath('baz')
WindowsPath('//foo/bar/baz')
>>> pathlib.Path(r'\\foo\bar').joinpath('baz')
WindowsPath('//foo/bar/baz')