Cython，准确说Cython是单独的一门语言，专门用来写在Python里面import用的扩展库。实际上Cython的语法基本上跟Python一致，而Cython有专门的“编译器”先将 Cython代码转变成C（自动加入了一大堆的C-Python API），然后使用C编译器编译出最终的Python可调用的模块。
Python source code (normally found in a .py file) is parsed and turned into bytecode by the interpreter. Then the python virtual machine executes the bytecode.
If this python code is a module (not a script), then the bytecode step is saved as a .pyc file. Future runs can load the pre-compiled bytecode for faster startup (but not faster execution).
If you want to import code from another language (like C/C++ or whatever) into a python project, you can do so. This will normally require compile to machine code and create a .so or .pyd file. These are not python bytecode and are not run by the python virtual machine, but called out to like any other shared library or DLL.
These binary extensions tend to be avoided when possible because the code is hardware or OS specific and can't be run by any python interpreter, but might be necessary for speed or for access to existing (non-python) code.
dynamic library can be connected to a process at runtime with platform-specific functionality, but the end result is similar to static linking