¿Cómo mapa os.path a posixpath.pyc y no os / path.py?
Pregunta
¿Cuál es el mecanismo subyacente en Python que se encarga de este tipo de "alias"?
>>> import os.path
>>> os.path.__file__
'/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/posixpath.pyc'
Solución
Tomado de os.py en CPython 2.6:
sys.modules['os.path'] = path
from os.path import (curdir, pardir, sep, pathsep, defpath, extsep, altsep,
devnull)
path
se define anteriormente como el módulo de plataforma específica:
if 'posix' in _names:
name = 'posix'
linesep = '\n'
from posix import *
try:
from posix import _exit
except ImportError:
pass
import posixpath as path
import posix
__all__.extend(_get_exports_list(posix))
del posix
elif 'nt' in _names:
# ...
Otros consejos
Tal vez os utiliza como importación?
import posixpath as path
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow