【发布时间】:2018-10-22 11:10:12
【问题描述】:
我一直在认真使用 os.path.sep 而不是文字“/”。因此,我很惊讶今天查看 os.path.join 的源代码并使用文字看到它。
我收集到,在 Windows 平台上,一些较低级别的库例程在使用 OS 函数调用文件系统或其他“/”时会将“/”转换为“\”。
在不损害 Windows 可移植性的情况下仅使用文字是否安全?
def join(a, *p):
path = a
for b in p:
if b.startswith('/'):
path = b
elif path == '' or path.endswith('/'):
path += b
else:
path += '/' + b
return path
【问题讨论】:
-
注意:在Windows机器上
os.sep == '\\'和os.path.join()在ntpath.py中重新定义,它使用'\\'。
标签: python-3.x python-2.7 operating-system