为什么 os.path.normpath 不删除第一个 //?

why os.path.normpath does not remove the firsts //?

为什么第一个 // 没有被删除?

以下代码:

import os
os.path.normpath('//var//lib/')

returns

'//var/lib'

没有

'/var/lib'

定义如下:

normpath(path)
    '''Normalize path, eliminating double slashes, etc.'''

因为 Windows,存在 python 保留的路径歧义。

//var/whatever 可以引用安装为名称 //var

的驱动器

/var/whatever 可以引用本地驱动器目录。

如果 python 折叠前导双斜杠,您可能会在不知不觉中更改路径以引用不同的位置。

另一种说法是,//var/var 是根本不同的路径,python 以不同的方式对待它们。您可能应该更改测试用例以反映这一点。