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

use*_*620 4 python os.path

为什么先//不删除?

如下代码:

import os
os.path.normpath('//var//lib/')
Run Code Online (Sandbox Code Playgroud)

退货

'//var/lib'
Run Code Online (Sandbox Code Playgroud)

'/var/lib'
Run Code Online (Sandbox Code Playgroud)

这里的定义:

normpath(path)
    '''Normalize path, eliminating double slashes, etc.'''
Run Code Online (Sandbox Code Playgroud)

Nat*_*ate 5

因为在Windows上,python保留了路径歧义性。

//var/whatever 可以引用安装为名称的驱动器 //var

要么

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

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

换句话说,//var/var是根本不同的路径,而python将它们区别对待。您可能应该更改测试用例以反映这一点。