mirror of
https://github.com/python/cpython.git
synced 2026-10-28 10:25:05 +08:00
* Docs: split builtins to their own page from library * review feedback * addressed Hugo's feedback * update the What's Next page * one more wording tweak * move builtins to their own directory. fix the reference name * moved pages need to be noted in tools/removed-ids.txt * add Python to the builtins reference title * add sphinxext-rediraffe for the library->builtins split * update check-html-ids to handle rediraffe redirects * now we don't need (page missing) for the redirected pages * update other references to moved pages * A seealso from builtins to library * make a nice section for rediraffe settings * move the builtins note to the end, as a seealso * address merwok's comments * cache looking for ids in files * simplify the intro paragraphs
1.3 KiB
1.3 KiB
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>.pyModules/_<module>.c(if there's also a C accelerator module)Lib/test/test_<module>.pyDoc/library/<module>.rst
For an extension module, the typical layout is:
Modules/<module>module.cLib/test/test_<module>.pyDoc/library/<module>.rst
For builtin types, the typical layout is:
Objects/<builtin>object.cLib/test/test_<builtin>.pyDoc/builtins/stdtypes.rst
For builtin functions, the typical layout is:
Some exceptions to these layouts are:
- built-in type
intis atObjects/longobject.c - built-in type
stris atObjects/unicodeobject.c - built-in module
sysis atPython/sysmodule.c - built-in module
marshalis atPython/marshal.c - Windows-only module
winregis atPC/winreg.c