Python os.getcwd() 在路径中返回波浪号。例如 C:\MYFOLD~1\test

Bra*_*ers 4 python directory path tilde getcwd

如何让 python 返回 C:\myfolderisafolder\test 的完整路径名?

qeh*_*hgt 5

E:\dev>cd VARESE~1

E:\dev\VARESE~1>python
>>> import os
>>> os.getcwd()
'E:\\dev\\VARESE~1'
>>> exit()

E:\dev\VARESE~1>cd ..
E:\dev>cd VAResearchDemo

E:\dev\VAResearchDemo>python
>>> import os
>>> os.getcwd()
'E:\\dev\\VAResearchDemo'
>>> exit()
Run Code Online (Sandbox Code Playgroud)

如您所见,如果我pythonVARESE~1目录中运行,则os.getcwd()返回短路径。如果我python在同一个目录中运行但路径很长,它会返回长路径。

所以,你应该尝试运行pythonC:\myfolderisafolder\test(检查链接的属性,或者您是如何运行的话)。

但是如果需要短路径转换为长路径,则必须调用win32的GetLongPathName函数