Nel tutorial della documentazione Cython, ci sono cimport e importare le dichiarazioni del modulo NumPy:Cython: cimport e importare NumPy come (entrambi) np
import numpy as np
cimport numpy as np
Ho trovato questa convenzione è molto popolare tra numpy/Cython utenti.
Questo sembra strano per me, perché sono entrambi nominato come np. In quale parte del codice vengono utilizzati import/cimported np? Perché il compilatore cython non li confonde?
Perché 'cimport' non importa realmente un modulo (Python). Importa [(C) definizioni] (http://docs.cython.org/src/userguide/sharing_declarations.html#the-cimport-statement). Non lo so, ma potrei immaginare che se si trasforma solo la seconda riga in 'cimport numpy', le cose si spezzerebbero: potrebbe essere molto utile la corrispondenza tra il vero nome del modulo Python usato nello script e le definizioni namespace. – Evert
@Evert Puoi anche usare 'cimport numpy', nello stesso modo in cui si potrebbe usare' import numpy', funziona allo stesso modo, ma 'cimport' dà accesso alle funzioni o agli attributi C sotto il modulo importato mentre 'import 'a funzioni o attributi Python –