在Windows上反转os.path.normcase

pki*_*kit 6 python filenames path case-sensitive

是否有一种简单的方法可以从全小写路径获得"真实"区分大小写的路径.就像os.path.normcase的反向一样.

例如,考虑目录:

c:\StackOverFlow
Run Code Online (Sandbox Code Playgroud)

如果我有以下代码片段,如何获取d_real?

>>> import os
>>> d = os.path.normcase('C:\\StackOverFlow') # convert to lower case
>>> d
'c:\\stackoverflow'
>>> d_real = ... # should give 'C:\StackOverFlow' with the correct case
Run Code Online (Sandbox Code Playgroud)

Nic*_*kis 0

肮脏的黑客方法,

import glob
...
if os.path.exists(d):
    d_real = glob.glob(d + '*')[0][:len(d)]
Run Code Online (Sandbox Code Playgroud)