Python内置功能os.path.dirname(路径)给出不一致的输出?

时间:2015-09-17 11:54:53

标签: python python-2.7

os.path.dirname("C:\\myfile\test.h")

给出结果

'C:\\' as dir name

尽管

os.path.diranme("C:\\myfile\mytest.h")

给出结果

'C:\\myfile'

如何一直获得第二次输出? 使用python 2.7

1 个答案:

答案 0 :(得分:3)

"C:\\myfile\test.h"相当于"C:\\myfile[tab character]est.h"。其目录为"C:\\",文件名为"myfile[tab character]est.h"

如果您想要名称为"test.h"且目录为"C:\\myfile"的文件,则应该转义该反斜杠:"C:\\myfile\\test.h"。或者,使用原始字符串:r"C:\myfile\test.h"。或者,使用" /"如果您的操作系统支持它:"C:/myfile/test.h"

"C:\\myfile\mytest.h"不会共享此问题,因为\m不是有效的转义序列,因此Python将其解释为反斜杠和M。