我刚刚开始使用python 2.7并使用以下代码来确定文件的路径:
import os, fnmatch
#find the location of sunnyexplorer.exe
def find_files(directory, pattern):
for root, dirs, files in os.walk(directory):
for basename in files:
if fnmatch.fnmatch(basename, pattern):
filename = os.path.join(root, basename)
yield filename
for filename in find_files('c:\users','*.sx2'):
print ('Found Sunny Explorer data in:', filename)
在尝试使用路径并注意到错误之前,似乎工作正常。该程序将路径报告为:
c:\users\woody\Documents\SMA\Sunny Explorer
而正确的路径是:
c:\users\woody\My Documents\SMA\Sunny Explorer
答案 0 :(得分:2)
自Vista以来,所有版本的MS Windows都默认将用户的文档存储在C:\Users\%username%\Documents
中。
但是,它们还包含NTFS junction point C:\Users\%username%\My Documents
,它指向同一位置以实现向后兼容。
根据我的理解,问题是您不能使用标准POSIX调用的连接点,因此如果没有某些特定于Windows的扩展模块,Python将无法使用它们。
另请参阅superuser.com上的this question。