1PYTHON setup.py build_ext --inplace 2 3######## setup.py ########### 4 5from distutils.core import setup 6from Cython.Build import cythonize 7 8import Cython.Compiler.Scanning 9 10Cython.Compiler.Scanning.trace_scanner = 1 11 12setup(ext_modules=cythonize("*.pyx")) 13 14try: 15 from importlib.util import spec_from_file_location, module_from_spec 16except ImportError: 17 # Py<=3.4 18 # Try to import from the current directory. 19 import os, sys 20 sys.path.insert(0, os.getcwd()) 21 import simple 22else: 23 # Py3.5+ 24 import glob 25 ext_files = glob.glob("simple*.so") + glob.glob("simple*.pyd") 26 assert ext_files 27 spec = spec_from_file_location('simple', ext_files[0]) 28 simple = module_from_spec(spec) 29 spec.loader.exec_module(simple) 30 31 32assert simple.test() == 123 33 34 35######## simple.pyx ########### 36 37def test(): 38 return 123 39