Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit eca5914

Browse files
committed
Arguments, Profile, Animation, Synthesizer
1 parent f51e830 commit eca5914

File tree

2 files changed

+16
-16
lines changed

2 files changed

+16
-16
lines changed

README.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1496,8 +1496,8 @@ Command Line Arguments
14961496
----------------------
14971497
```python
14981498
import sys
1499-
script_name = sys.argv[0]
1500-
arguments = sys.argv[1:]
1499+
scripts_path = sys.argv[0]
1500+
arguments = sys.argv[1:]
15011501
```
15021502

15031503
### Argument Parser
@@ -2541,7 +2541,7 @@ duration = perf_counter() - start_time
25412541
### Timing a Snippet
25422542
```python
25432543
>>> from timeit import timeit
2544-
>>> timeit('"-".join(str(i) for i in range(100))',
2544+
>>> timeit('"".join(str(i) for i in range(100))',
25452545
... number=10000, globals=globals(), setup='pass')
25462546
0.34986
25472547
```
@@ -2776,8 +2776,8 @@ from PIL import Image, ImageDraw
27762776
import imageio
27772777
WIDTH, R = 126, 10
27782778
frames = []
2779-
for velocity in range(15):
2780-
y = sum(range(velocity+1))
2779+
for velocity in range(1, 16):
2780+
y = sum(range(velocity))
27812781
frame = Image.new('L', (WIDTH, WIDTH))
27822782
draw = ImageDraw.Draw(frame)
27832783
draw.ellipse((WIDTH/2-R, y, WIDTH/2+R, y+R*2), fill='white')
@@ -2901,13 +2901,13 @@ Synthesizer
29012901
import simpleaudio, math, struct
29022902
from itertools import chain, repeat
29032903
F = 44100
2904-
P1 = '71,69,,71,66,,62,66,,59,,,'
2905-
P2 = '71,73,,74,73,,74,,71,,73,71,,73,,69,,71,69,,71,,67,,71,,,'
2904+
P1 = '71,69,,71,66,,62,66,,59,,,'
2905+
P2 = '71,73,,74,73,,74,,71,,73,71,,73,,69,,71,69,,71,,67,,71,,,'
29062906
get_pause = lambda seconds: repeat(0, int(seconds * F))
29072907
sin_f = lambda i, hz: math.sin(i * 2 * math.pi * hz / F)
29082908
get_wave = lambda hz, seconds: (sin_f(i, hz) for i in range(int(seconds * F)))
29092909
get_hz = lambda key: 8.176 * 2 ** (int(key) / 12)
2910-
parse_note = lambda note: (get_hz(note[:2]), 0.25 if '' in note else 0.125)
2910+
parse_note = lambda note: (get_hz(note[:2]), 0.125 if '' in note else 0.25)
29112911
get_samples = lambda note: get_wave(*parse_note(note)) if note else get_pause(0.125)
29122912
samples_f = chain.from_iterable(get_samples(n) for n in f'{P1}{P1}{P2}'.split(','))
29132913
samples_b = b''.join(struct.pack('<h', int(f * 30000)) for f in samples_f)

index.html

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1419,8 +1419,8 @@
14191419
<li><strong>Raises EOFError when user hits EOF (ctrl-d/z) or input stream gets exhausted.</strong></li>
14201420
</ul>
14211421
<div><h2 id="commandlinearguments"><a href="#commandlinearguments" name="commandlinearguments">#</a>Command Line Arguments</h2><pre><code class="python language-python hljs"><span class="hljs-keyword">import</span> sys
1422-
script_name = sys.argv[<span class="hljs-number">0</span>]
1423-
arguments = sys.argv[<span class="hljs-number">1</span>:]
1422+
scripts_path = sys.argv[<span class="hljs-number">0</span>]
1423+
arguments = sys.argv[<span class="hljs-number">1</span>:]
14241424
</code></pre></div>
14251425

14261426
<div><h3 id="argumentparser">Argument Parser</h3><pre><code class="python language-python hljs"><span class="hljs-keyword">from</span> argparse <span class="hljs-keyword">import</span> ArgumentParser, FileType
@@ -2213,7 +2213,7 @@
22132213
</code></pre></div>
22142214

22152215
<div><h3 id="timingasnippet">Timing a Snippet</h3><pre><code class="python language-python hljs"><span class="hljs-meta">&gt;&gt;&gt; </span><span class="hljs-keyword">from</span> timeit <span class="hljs-keyword">import</span> timeit
2216-
<span class="hljs-meta">&gt;&gt;&gt; </span>timeit(<span class="hljs-string">'"-".join(str(i) for i in range(100))'</span>,
2216+
<span class="hljs-meta">&gt;&gt;&gt; </span>timeit(<span class="hljs-string">'"".join(str(i) for i in range(100))'</span>,
22172217
<span class="hljs-meta">... </span> number=<span class="hljs-number">10000</span>, globals=globals(), setup=<span class="hljs-string">'pass'</span>)
22182218
<span class="hljs-number">0.34986</span>
22192219
</code></pre></div>
@@ -2393,8 +2393,8 @@
23932393
<span class="hljs-keyword">import</span> imageio
23942394
WIDTH, R = <span class="hljs-number">126</span>, <span class="hljs-number">10</span>
23952395
frames = []
2396-
<span class="hljs-keyword">for</span> velocity <span class="hljs-keyword">in</span> range(<span class="hljs-number">15</span>):
2397-
y = sum(range(velocity+<span class="hljs-number">1</span>))
2396+
<span class="hljs-keyword">for</span> velocity <span class="hljs-keyword">in</span> range(<span class="hljs-number">1</span>, <span class="hljs-number">16</span>):
2397+
y = sum(range(velocity))
23982398
frame = Image.new(<span class="hljs-string">'L'</span>, (WIDTH, WIDTH))
23992399
draw = ImageDraw.Draw(frame)
24002400
draw.ellipse((WIDTH/<span class="hljs-number">2</span>-R, y, WIDTH/<span class="hljs-number">2</span>+R, y+R*<span class="hljs-number">2</span>), fill=<span class="hljs-string">'white'</span>)
@@ -2494,13 +2494,13 @@
24942494
<span class="hljs-keyword">import</span> simpleaudio, math, struct
24952495
<span class="hljs-keyword">from</span> itertools <span class="hljs-keyword">import</span> chain, repeat
24962496
F = <span class="hljs-number">44100</span>
2497-
P1 = <span class="hljs-string">'71,69,,71,66,,62,66,,59,,,'</span>
2498-
P2 = <span class="hljs-string">'71,73,,74,73,,74,,71,,73,71,,73,,69,,71,69,,71,,67,,71,,,'</span>
2497+
P1 = <span class="hljs-string">'71,69,,71,66,,62,66,,59,,,'</span>
2498+
P2 = <span class="hljs-string">'71,73,,74,73,,74,,71,,73,71,,73,,69,,71,69,,71,,67,,71,,,'</span>
24992499
get_pause = <span class="hljs-keyword">lambda</span> seconds: repeat(<span class="hljs-number">0</span>, int(seconds * F))
25002500
sin_f = <span class="hljs-keyword">lambda</span> i, hz: math.sin(i * <span class="hljs-number">2</span> * math.pi * hz / F)
25012501
get_wave = <span class="hljs-keyword">lambda</span> hz, seconds: (sin_f(i, hz) <span class="hljs-keyword">for</span> i <span class="hljs-keyword">in</span> range(int(seconds * F)))
25022502
get_hz = <span class="hljs-keyword">lambda</span> key: <span class="hljs-number">8.176</span> * <span class="hljs-number">2</span> ** (int(key) / <span class="hljs-number">12</span>)
2503-
parse_note = <span class="hljs-keyword">lambda</span> note: (get_hz(note[:<span class="hljs-number">2</span>]), <span class="hljs-number">0.25</span> <span class="hljs-keyword">if</span> <span class="hljs-string">'♪'</span> <span class="hljs-keyword">in</span> note <span class="hljs-keyword">else</span> <span class="hljs-number">0.125</span>)
2503+
parse_note = <span class="hljs-keyword">lambda</span> note: (get_hz(note[:<span class="hljs-number">2</span>]), <span class="hljs-number">0.125</span> <span class="hljs-keyword">if</span> <span class="hljs-string">'♪'</span> <span class="hljs-keyword">in</span> note <span class="hljs-keyword">else</span> <span class="hljs-number">0.25</span>)
25042504
get_samples = <span class="hljs-keyword">lambda</span> note: get_wave(*parse_note(note)) <span class="hljs-keyword">if</span> note <span class="hljs-keyword">else</span> get_pause(<span class="hljs-number">0.125</span>)
25052505
samples_f = chain.from_iterable(get_samples(n) <span class="hljs-keyword">for</span> n <span class="hljs-keyword">in</span> <span class="hljs-string">f'<span class="hljs-subst">{P1}</span><span class="hljs-subst">{P1}</span><span class="hljs-subst">{P2}</span>'</span>.split(<span class="hljs-string">','</span>))
25062506
samples_b = <span class="hljs-string">b''</span>.join(struct.pack(<span class="hljs-string">'&lt;h'</span>, int(f * <span class="hljs-number">30000</span>)) <span class="hljs-keyword">for</span> f <span class="hljs-keyword">in</span> samples_f)

0 commit comments

Comments
 (0)