10000 Cython · gto76/python-cheatsheet@78175bb · GitHub
[go: up one dir, main page]

Skip to content

Commit 78175bb

Browse files
committed
Cython
1 parent fed9b8f commit 78175bb

File tree

3 files changed

+8
-8
lines changed

3 files changed

+8
-8
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3515,14 +3515,14 @@ Appendix
35153515
# $ pip3 install cython
35163516
import pyximport; pyximport.install() # Module that runs imported Cython scripts.
35173517
import <cython_script> # Script must be saved with '.pyx' extension.
3518-
<cython_script>.main() # Main() isn't automatically executed.
35193518
```
35203519

35213520
#### All `'cdef'` definitions are optional, but they contribute to the speed-up:
35223521

35233522
```python
35243523
cdef <ctype/type> [*]<var_name> [= <obj>]
3525-
cdef <ctype>[n_elements] <var_name> [= <coll_of_nums>]
3524+
cdef <ctype>[n_items] <array_name> [= <coll_of_nums/structs>]
3525+
cdef <ctype> *<array_name> = <<ctype> *> malloc(n_items * sizeof(<ctype>))
35263526
cdef <ctype/type/void> <func_name>(<ctype/type> [*]<arg_name>): ...
35273527
```
35283528

index.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@
5656

5757
<body>
5858
<header>
59-
<aside>June 2, 2025</aside>
59+
<aside>June 4, 2025</aside>
6060
<a href="https://gto76.github.io" rel="author">Jure Šorn</a>
6161
</header>
6262

@@ -2876,13 +2876,13 @@ <h3 id="format-2">Format</h3><div><h4 id="forstandardtypesizesandmanualalignment
28762876
<div><h2 id="appendix"><a href="#appendix" name="appendix">#</a>Appendix</h2><div><h3 id="cython">Cython</h3><p><strong>Library that compiles Python-like code into C.</strong></p><pre><code class="python language-python hljs"><span class="hljs-comment"># $ pip3 install cython</span>
28772877
<span class="hljs-keyword">import</span> pyximport; pyximport.install() <span class="hljs-comment"># Module that runs imported Cython scripts.</span>
28782878
<span class="hljs-keyword">import</span> &lt;cython_script&gt; <span class="hljs-comment"># Script must be saved with '.pyx' extension.</span>
2879-
&lt;cython_script&gt;.main() <span class="hljs-comment"># Main() isn't automatically executed.</span>
28802879
</code></pre></div></div>
28812880

28822881

28832882

28842883
<div><h4 id="allcdefdefinitionsareoptionalbuttheycontributetothespeedup">All <code class="python hljs"><span class="hljs-string">'cdef'</span></code> definitions are optional, but they contribute to the speed-up:</h4><pre><code class="python language-python hljs"><span class="hljs-keyword">cdef</span> &lt;ctype/type&gt; [*]&lt;var_name&gt; [= &lt;obj&gt;]
2885-
<span class="hljs-keyword">cdef</span> &lt;ctype&gt;[n_elements] &lt;var_name&gt; [= &lt;coll_of_nums&gt;]
2884+
<span class="hljs-keyword">cdef</span> &lt;ctype&gt;[n_items] &lt;array_name&gt; [= &lt;coll_of_nums/structs&gt;]
2885+
<span class="hljs-keyword">cdef</span> &lt;ctype&gt; *&lt;array_name&gt; = &lt;&lt;ctype&gt; *&gt; malloc(n_items * sizeof(&lt;ctype&gt;))
28862886
<span class="hljs-keyword">cdef</span> &lt;ctype/type/void&gt; &lt;func_name&gt;(&lt;ctype/type&gt; [*]&lt;arg_name&gt;): ...
28872887
</code></pre></div>
28882888

@@ -2939,7 +2939,7 @@ <h3 id="format-2">Format</h3><div><h4 id="forstandardtypesizesandmanualalignment
29392939

29402940

29412941
<footer>
2942-
<aside>June 2, 2025</aside>
2942+
<aside>June 4, 2025</aside>
29432943
<a href="https://gto76.github.io" rel="author">Jure Šorn</a>
29442944
</footer>
29452945

parse.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -325,10 +325,10 @@ const GROUPBY =
325325
'<span class="hljs-number">3</span> <span class="hljs-number">1</span> <span class="hljs-number">2</span>\n' +
326326
'<span class="hljs-number">6</span> <span class="hljs-number">11</span> <span class="hljs-number">13</span>';
327327

328-
329328
const CYTHON_1 =
330329
'<span class="hljs-keyword">cdef</span> &lt;ctype/type&gt; [*]&lt;var_name&gt; [= &lt;obj&gt;]\n' +
331-
'<span class="hljs-keyword">cdef</span> &lt;ctype&gt;[n_elements] &lt;var_name&gt; [= &lt;coll_of_nums&gt;]\n' +
330+
'<span class="hljs-keyword">cdef</span> &lt;ctype&gt;[n_items] &lt;array_name&gt; [= &lt;coll_of_nums/structs&gt;]\n' +
331+
'<span class="hljs-keyword">cdef</span> &lt;ctype&gt; *&lt;array_name&gt; = &lt;&lt;ctype&gt; *&gt; malloc(n_items * sizeof(&lt;ctype&gt;))\n' +
332332
'<span class="hljs-keyword">cdef</span> &lt;ctype/type/void&gt; &lt;func_name&gt;(&lt;ctype/type&gt; [*]&lt;arg_name&gt;): ...\n';
333333

334334
const CYTHON_2 =

0 commit comments

Comments
 (0)
0