(python)os.path.exists os.path.isfile的谎言?

os.path.exists给了我不正确的答案。

这是不是在下面的链接讨论同样的问题,因为我在Windows。 是否有其他原因导致失败?

os.path.exists()在于

当我在* .py脚本运行的同一目录下testing它时,testing返回ok,但是它的子目录都没有。

-编辑-

我正在使用绝对path。

我正在查看这个脚本运行的子目录之一,并可以从字面上看到在Windows资源pipe理器中更改文件的最后修改时间字段。
有没有其他的东西在我的电脑上,我可以想到,将修改有问题的文件。

def SaveIfNewer(doc, aiFile, pngFile): options = win32com.client.Dispatch('Illustrator.ExportOptionsPNG24') options.SetArtBoardClipping(True) if (os.path.exists(pngFile)): aiFileTime = os.stat(aiFile)[8] pngFileTime = os.stat(pngFile)[8] print("aiFileTime: ", aiFileTime, "pngFileTime: ", pngFileTime) if(aiFileTime > pngFileTime): os.remove(pngFile) if( not os.path.isfile(pngFile)): doc.Export(pngFile, constants.aiPNG24, options) print 'exporting:', pngFile else: print 'skipping file:', pngFile 

原来,os.path.exists和os.path.isfile区分大小写。

胡说!

os.path.existsos.path.isfile在Windows机器中不区分大小写。

这是我在Windows 7(Python 2.7)

 >>> os.path.exists('C:/.rnd') True >>> os.path.exists('C:/.RND') True >>> os.path.isfile('C:/.rnd') True >>> os.path.isfile('C:/.RND') True