我正在使用运行python 2.7的linux机器。
我想使用os.path.dirname()
来获取文件完整路径的父目录(不是来自此机器),例如:
C:\\documents and settings\\Dan\\yada\\1.txt
=>
将导致C:\\documents and settings\\Dan\\yada
但令我惊讶的是,我得到了空字符串。
任何人都可以解释为什么以及如何解决它?
答案 0 :(得分:3)
改为使用ntpath
:
>>> import ntpath
>>> ntpath.dirname('C:\\documents and settings\\Dan\\yada\\1.txt')
'C:\\documents and settings\\Dan\\yada'
由于不同的操作系统具有不同的路径名约定,因此标准库中有此模块的多个版本。
os.path
模块始终是适用于Python运行的操作系统的路径模块,因此可用于本地路径。但是,如果要以其中一种格式操作始终的路径,也可以导入和使用各个模块。它们都有相同的界面:
posixpath
用于UNIX风格的路径ntpath
用于Windows路径macpath
用于旧式MacOS路径os2emxpath
用于OS / 2 EMX路径