CPython source code

This section gives an overview of CPython's code structure and provides a summary of file locations for modules and built-ins.

Source code layout

For a Python module, the typical layout is:

  • Lib/<module>.py
  • Modules/_<module>.c (if there's also a C accelerator module)
  • Lib/test/test_<module>.py
  • Doc/library/<module>.rst

For an extension module, the typical layout is:

  • Modules/<module>module.c
  • Lib/test/test_<module>.py
  • Doc/library/<module>.rst

For builtin types, the typical layout is:

For builtin functions, the typical layout is:

Some exceptions to these layouts are: