diff options
Diffstat (limited to 'docs/examples/quickstart/cythonize')
5 files changed, 44 insertions, 24 deletions
diff --git a/docs/examples/quickstart/cythonize/cdef_keyword.py b/docs/examples/quickstart/cythonize/cdef_keyword.py new file mode 100644 index 000000000..6c0ee3e68 --- /dev/null +++ b/docs/examples/quickstart/cythonize/cdef_keyword.py @@ -0,0 +1,4 @@ +@cython.cfunc +@cython.exceptval(-2, check=True) +def f(x: cython.double) -> cython.double: + return x ** 2 - x diff --git a/docs/examples/quickstart/cythonize/cdef_keyword.pyx b/docs/examples/quickstart/cythonize/cdef_keyword.pyx index 16503ee89..bc7d893fa 100644 --- a/docs/examples/quickstart/cythonize/cdef_keyword.pyx +++ b/docs/examples/quickstart/cythonize/cdef_keyword.pyx @@ -1,2 +1,4 @@ -cdef double f(double x) except? -2:
- return x ** 2 - x
+ + +cdef double f(double x) except? -2: + return x ** 2 - x diff --git a/docs/examples/quickstart/cythonize/integrate.py b/docs/examples/quickstart/cythonize/integrate.py index 8d420b923..80d6d13a7 100644 --- a/docs/examples/quickstart/cythonize/integrate.py +++ b/docs/examples/quickstart/cythonize/integrate.py @@ -1,10 +1,10 @@ -def f(x):
- return x ** 2 - x
-
-
-def integrate_f(a, b, N):
- s = 0
- dx = (b - a) / N
- for i in range(N):
- s += f(a + i * dx)
- return s * dx
+def f(x): + return x ** 2 - x + + +def integrate_f(a, b, N): + s = 0 + dx = (b - a) / N + for i in range(N): + s += f(a + i * dx) + return s * dx diff --git a/docs/examples/quickstart/cythonize/integrate_cy.py b/docs/examples/quickstart/cythonize/integrate_cy.py new file mode 100644 index 000000000..592ce8db7 --- /dev/null +++ b/docs/examples/quickstart/cythonize/integrate_cy.py @@ -0,0 +1,13 @@ +def f(x: cython.double): + return x ** 2 - x + + +def integrate_f(a: cython.double, b: cython.double, N: cython.int): + i: cython.int + s: cython.double + dx: cython.double + s = 0 + dx = (b - a) / N + for i in range(N): + s += f(a + i * dx) + return s * dx diff --git a/docs/examples/quickstart/cythonize/integrate_cy.pyx b/docs/examples/quickstart/cythonize/integrate_cy.pyx index 0bb0cd548..0e20a6c33 100644 --- a/docs/examples/quickstart/cythonize/integrate_cy.pyx +++ b/docs/examples/quickstart/cythonize/integrate_cy.pyx @@ -1,12 +1,13 @@ -def f(double x):
- return x ** 2 - x
-
-
-def integrate_f(double a, double b, int N):
- cdef int i
- cdef double s, dx
- s = 0
- dx = (b - a) / N
- for i in range(N):
- s += f(a + i * dx)
- return s * dx
+def f(double x): + return x ** 2 - x + + +def integrate_f(double a, double b, int N): + cdef int i + cdef double s + cdef double dx + s = 0 + dx = (b - a) / N + for i in range(N): + s += f(a + i * dx) + return s * dx |