Python: ¿dónde está el código para os.mkdir?

He estado buscando a través del código del módulo os (para ser claro, estoy mirando el archivo /usr/lib/python2.7/os.py), y he estado tratando de encontrar el código para La función mkdir. Por lo que pude ver, proviene del módulo ‘posix’, y es una función incorporada, igual que el rango o el máximo:

>>> import posix >>> posix.mkdir  >>> max  

Supongo que el código para estos está escrito en C en algún lugar, y el intérprete de python sabe dónde encontrarlos. ¿Alguien podría explicarme o señalarme algunos recursos que lo hacen, cómo y dónde se escriben estas funciones integradas y cómo se integran con el intérprete?

¡Gracias!

En las plataformas POSIX (y en Windows y OS / 2), el módulo os importa desde un módulo C, definido en posixmodule.c .

Este módulo define una función posix_mkdir() que envuelve la llamada mkdir() C en plataformas POSIX, CreateDirectoryW en Windows.

El módulo registra esta función, junto con otras, en la estructura del módulo PyMethodDef posix_methods . Cuando se importa el módulo, Python llama a la función PyMODINIT_FUNC() , que usa esa estructura para crear un objeto de módulo posix_methods con la estructura posix_methods y agrega una serie de constantes (como las constantes de bandera de open() ) al módulo.

Consulte el tutorial sobre cómo extender las extensiones C en Python con C o C ++ .