Desde el CPython`s docs:
Todos los módulos incorporados conocidos se enumeran en sys.builtin_module_names
Los nombres de los módulos en sys.builtin_module_names
es actual only for used un intérprete de Python:
Una tupla de cadenas que dan los nombres de todos los módulos que se compilan en este intérprete de Python
Cada incorporado en el módulo use el cargador especial durante la importación: BuiltinImporter
In [65]: import itertools, sys, gc
In [66]: itertools.__loader__, sys.__loader__, gc.__loader__
Out[66]:
(_frozen_importlib.BuiltinImporter,
_frozen_importlib.BuiltinImporter,
_frozen_importlib.BuiltinImporter)
En el Python 3 el número de módulos integrados ha aumentado ligeramente
$ python2.7 -c "import sys; print('Count built-in modules: %d' %len(sys.builtin_module_names)); print(sys.builtin_module_names)"
Count built-in modules: 51
('__builtin__', '__main__', '_ast', '_bisect', '_codecs', '_collections', '_functools', '_heapq', '_io', '_locale', '_md5', '_random', '_sha', '_sha256', '_sha512', '_socket', '_sre', '_struct', '_symtable', '_warnings', '_weakref', 'array', 'binascii', 'cPickle', 'cStringIO', 'cmath', 'datetime', 'errno', 'exceptions', 'fcntl', 'gc', 'grp', 'imp', 'itertools', 'marshal', 'math', 'operator', 'posix', 'pwd', 'select', 'signal', 'spwd', 'strop', 'sys', 'syslog', 'thread', 'time', 'unicodedata', 'xxsubtype', 'zipimport', 'zlib')
$ python3.4 -c "import sys; print('Count built-in modules: %d' %len(sys.builtin_module_names)); print(sys.builtin_module_names)"
Count built-in modules: 54
('_ast', '_bisect', '_codecs', '_collections', '_datetime', '_elementtree', '_functools', '_heapq', '_imp', '_io', '_locale', '_md5', '_operator', '_pickle', '_posixsubprocess', '_random', '_sha1', '_sha256', '_sha512', '_socket', '_sre', '_stat', '_string', '_struct', '_symtable', '_thread', '_tracemalloc', '_warnings', '_weakref', 'array', 'atexit', 'binascii', 'builtins', 'errno', 'faulthandler', 'fcntl', 'gc', 'grp', 'itertools', 'marshal', 'math', 'posix', 'pwd', 'pyexpat', 'select', 'signal', 'spwd', 'sys', 'syslog', 'time', 'unicodedata', 'xxsubtype', 'zipimport', 'zlib')
A medida que el CPython se implementa (primaria) en el lenguaje de programación C, por lo que no es fácil de encontrar, como ejemplo Localización sys Python`s módulo (basados en this answer):
$ locate sysmodule | grep python
/usr/include/python2.7/sysmodule.h
/usr/include/python3.4m/sysmodule.h
/usr/local/include/python3.5m/sysmodule.h
Más información sobre cómo obtener una información sobre todos los módulos disponibles se la CPython, busque en mi respuesta here.
Es posible que también desee comprobar [PEP8] (http://www.python.org/dev/peps/pep-0008/) y las Convenciones de nomenclatura –
"subrayado" y "subrayado" son la misma cosa. Existen convenciones para el uso de '_name' y' __name__'. El número de funciones/métodos/nombres en la biblioteca incorporada que tiene caracteres en mayúsculas es infinitamente pequeño. ¿Cuál es tu objetivo? –
Thx, Vincent. Me gusta poner mi mano en las funciones de los módulos incorporados para ver la situación actual de nombres :) – Drake