Windows utiliza nombres de archivo entre mayúsculas y minúsculas, por lo que puede abrir el mismo archivo con cualquiera de estos:En Python, ¿cómo puedo obtener la ruta correcta para un archivo?
r"c:\windows\system32\desktop.ini"
r"C:\WINdows\System32\DESKTOP.ini"
r"C:\WiNdOwS\SyStEm32\DeSkToP.iNi"
, etc. indicados en cualquiera de estos caminos, ¿cómo puedo encontrar el verdadero caso? Quiero que todos ellos producen:
r"C:\Windows\System32\desktop.ini"
os.path.normcase
no lo hace, simplemente minúsculas todo. os.path.abspath
devuelve una ruta absoluta, pero cada una de ellas es absoluta, por lo que no cambia ninguna de ellas. os.path.realpath
solo se usa para resolver enlaces simbólicos, que Windows no tiene, por lo que es lo mismo que abspath en Windows.
¿Hay una manera directa de hacerlo?
Parece que este es un DUP de http://stackoverflow.com/questions/2113822/python-getting-filename-case -as-almacenados-en-ventanas, que tiene la respuesta. –