如何编辑 CPython 的 Lib/importlib/_bootstrap.py?

How to edit CPython's Lib/importlib/_bootstrap.py?

我想使用 CPython 的 Lib/importlib/_bootstrap.py 文件,但是当我导入模块时,我在 MacOS(使用 Homebrew 包管理器安装)上当前安装的 CPython 中所做的编辑没有任何效果。

例如,如果我在 _init_module_attrs 函数主体的开头添加 print("hello", file=sys.stderr) 语句:

$ vi /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/python3.7/importlib/_bootstrap.py

然后导入一个模块:

$ python3 -c "import pathlib"

未打印任何内容。

importlib._bootstrap 是冻结模块。要更新它,应该重新编译 importlib 模块:

$ cd /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/Python/
$ make regen-importlib
$ make