Skip to content

Commit a30b491

Browse files
author
tommy3001
committed
indentation fixed
1 parent 29a3643 commit a30b491

File tree

1 file changed

+42
-42
lines changed

1 file changed

+42
-42
lines changed

docs/scenarios/speed.rst

Lines changed: 42 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -74,46 +74,48 @@ With Cython you are also able to call C-functions and realize strong typing of v
7474

7575
.. code-block:: python
7676
77-
def primes(int kmax):
78-
cdef int n, k, i
79-
cdef int p[1000]
80-
result = []
81-
if kmax > 1000:
82-
kmax = 1000
83-
k = 0
84-
n = 2
85-
while k < kmax:
86-
i = 0
87-
while i < k and n % p[i] != 0:
88-
i = i + 1
89-
if i == k:
90-
p[k] = n
91-
k = k + 1
92-
result.append(n)
93-
n = n + 1
94-
return result
77+
def primes(int kmax):
78+
cdef int n, k, i
79+
cdef int p[1000]
80+
result = []
81+
if kmax > 1000:
82+
kmax = 1000
83+
k = 0
84+
n = 2
85+
while k < kmax:
86+
i = 0
87+
while i < k and n % p[i] != 0:
88+
i = i + 1
89+
if i == k:
90+
p[k] = n
91+
k = k + 1
92+
result.append(n)
93+
n = n + 1
94+
return result
95+
9596
9697
This implementation of an algorithm to find prime numbers has some additional commands instead of the next one, which is implemented in pure Python:
9798

9899
.. code-block:: python
99100
100-
def primes( kmax):
101-
p= range(1000)
102-
result = []
103-
if kmax > 1000:
104-
kmax = 1000
105-
k = 0
106-
n = 2
107-
while k < kmax:
108-
i = 0
109-
while i < k and n % p[i] != 0:
110-
i = i + 1
111-
if i == k:
112-
p[k] = n
113-
k = k + 1
114-
result.append(n)
115-
n = n + 1
116-
return result
101+
def primes( kmax):
102+
p= range(1000)
103+
result = []
104+
if kmax > 1000:
105+
kmax = 1000
106+
k = 0
107+
n = 2
108+
while k < kmax:
109+
i = 0
110+
while i < k and n % p[i] != 0:
111+
i = i + 1
112+
if i == k:
113+
p[k] = n
114+
k = k + 1
115+
result.append(n)
116+
n = n + 1
117+
return result
118+
117119
118120
119121
The only difference between the both algorithm is this part:
@@ -124,20 +126,18 @@ Strong typing with Cython:
124126
125127
#primes function with additional Cython code:
126128
def primes(int kmax):
127-
cdef int n, k, i
128-
cdef int p[1000]
129-
result = []
130-
129+
cdef int n, k, i
130+
cdef int p[1000]
131+
result = []
131132
132133
Normal variable definition in Python:
133134

134135
.. code-block:: python
135136
136137
#primes in standard Python syntax:
137138
def primes( kmax):
138-
p= range(1000)
139-
result = []
140-
139+
p= range(1000)
140+
result = []
141141
142142
What is the difference? In the upper Cython version you can see the definitions of the variable types like in standard C.
143143
For example `cdef int n,k,i` in line 3. This additional type definition (e.g. integer) allows the Cython compiler to generate

0 commit comments

Comments
 (0)