diff --git a/articles.html b/articles.html index ffc6a41..abc896c 100644 --- a/articles.html +++ b/articles.html @@ -37,9 +37,10 @@
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration(value: str, target: Literal[“days”, “hours”]): - “”“Convert a string to a number of hours, or days”“” - num = int(“”.join(filter(str.isdigit, value)))
-if target == "hours":
- reconvert = True
+from typing import Literal
-if "h" in value:
- if target == "days":
- raise ValueError("Invalid duration value", value)
- num = num
- reconvert = False
-elif "d" in value:
- num = num
-elif "w" in value:
- num = num * 7
-elif "m" in value:
- num = num * 30
-elif "y" in value:
- num = num * 365
-else:
- raise ValueError("Invalid duration value", value)
-if target == "hours" and reconvert:
- num = num * 24
+def string_to_duration(value: str, target: Literal["days", "hours"]):
+ """Convert a string to a number of hours, or days"""
+ num = int("".join(filter(str.isdigit, value)))
-return num
+ if target == "hours":
+ reconvert = True
+
+ if "h" in value:
+ if target == "days":
+ raise ValueError("Invalid duration value", value)
+ num = num
+ reconvert = False
+ elif "d" in value:
+ num = num
+ elif "w" in value:
+ num = num * 7
+ elif "m" in value:
+ num = num * 30
+ elif "y" in value:
+ num = num * 365
+ else:
+ raise ValueError("Invalid duration value", value)
+
+ if target == "hours" and reconvert:
+ num = num * 24
+
+ return num
-
-“““
#python, #conversion - Posté dans la catégorie code
diff --git a/feeds/.atom.xml b/feeds/.atom.xml
index 5b0e042..95cf4f1 100644
--- a/feeds/.atom.xml
+++ b/feeds/.atom.xml
@@ -7,9 +7,10 @@
</code></pre></div>
<p>The code :</p>
-<p><span class="dquo">“</span>`python
-from typing import Literal</p>
-<p>def string_to_duration …</p><p>I found myself wanting to convert a string to a duration (int), for some configuration.</p>
+<div class="highlight"><pre><span></span><code><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Literal</span>
+
+
+<span class="k">def</span> <span class="nf">string_to_duration</span><span class="p">(</span><span class="n">value …</span></code></pre></div><p>I found myself wanting to convert a string to a duration (int), for some configuration.</p>
<p>Something you can call like this:</p>
<div class="highlight"><pre><span></span><code><span class="n">string_to_duration</span><span class="p">(</span><span class="s2">"1d"</span><span class="p">,</span> <span class="n">target</span><span class="o">=</span><span class="s2">"days"</span><span class="p">)</span> <span class="c1"># returns 1</span>
<span class="n">string_to_duration</span><span class="p">(</span><span class="s2">"1d"</span><span class="p">,</span> <span class="n">target</span><span class="o">=</span><span class="s2">"hours"</span><span class="p">)</span> <span class="c1"># returns 24</span>
@@ -17,37 +18,37 @@ from typing import Literal</p>
</code></pre></div>
<p>The code :</p>
-<p><span class="dquo">“</span>`python
-from typing import Literal</p>
-<p>def string_to_duration(value: str, target: Literal[“days”, “hours”]):
- “”“Convert a string to a number of hours, or days”“”
- num = int(“”.join(filter(str.isdigit, value)))</p>
-<div class="highlight"><pre><span></span><code><span class="k">if</span><span class="w"> </span><span class="nv">target</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="s2">"hours"</span>:
-<span class="w"> </span><span class="nv">reconvert</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">True</span>
+<div class="highlight"><pre><span></span><code><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Literal</span>
-<span class="k">if</span><span class="w"> </span><span class="s2">"h"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="nv">target</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="s2">"days"</span>:
-<span class="w"> </span><span class="nv">raise</span><span class="w"> </span><span class="nv">ValueError</span><span class="ss">(</span><span class="s2">"Invalid duration value"</span>,<span class="w"> </span><span class="nv">value</span><span class="ss">)</span>
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span>
-<span class="w"> </span><span class="nv">reconvert</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">False</span>
-<span class="nv">elif</span><span class="w"> </span><span class="s2">"d"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span>
-<span class="nv">elif</span><span class="w"> </span><span class="s2">"w"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="mi">7</span>
-<span class="nv">elif</span><span class="w"> </span><span class="s2">"m"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="mi">30</span>
-<span class="nv">elif</span><span class="w"> </span><span class="s2">"y"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="mi">365</span>
-<span class="k">else</span>:
-<span class="w"> </span><span class="nv">raise</span><span class="w"> </span><span class="nv">ValueError</span><span class="ss">(</span><span class="s2">"Invalid duration value"</span>,<span class="w"> </span><span class="nv">value</span><span class="ss">)</span>
-<span class="k">if</span><span class="w"> </span><span class="nv">target</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="s2">"hours"</span><span class="w"> </span><span class="nv">and</span><span class="w"> </span><span class="nv">reconvert</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="mi">24</span>
+<span class="k">def</span> <span class="nf">string_to_duration</span><span class="p">(</span><span class="n">value</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">target</span><span class="p">:</span> <span class="n">Literal</span><span class="p">[</span><span class="s2">"days"</span><span class="p">,</span> <span class="s2">"hours"</span><span class="p">]):</span>
+<span class="w"> </span><span class="sd">"""Convert a string to a number of hours, or days"""</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="s2">""</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="nb">filter</span><span class="p">(</span><span class="nb">str</span><span class="o">.</span><span class="n">isdigit</span><span class="p">,</span> <span class="n">value</span><span class="p">)))</span>
-<span class="k">return</span><span class="w"> </span><span class="nv">num</span>
-</code></pre></div>
+ <span class="k">if</span> <span class="n">target</span> <span class="o">==</span> <span class="s2">"hours"</span><span class="p">:</span>
+ <span class="n">reconvert</span> <span class="o">=</span> <span class="kc">True</span>
-<p><span class="dquo">“</span>““</p> 2023, Semaine 40 2023-10-08T00:00:00+02:00 2023-10-08T00:00:00+02:00 tag:blog.notmyidea.org,2023-10-08:/2023-semaine-40.html
+ <span class="k">if</span> <span class="s2">"h"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="k">if</span> <span class="n">target</span> <span class="o">==</span> <span class="s2">"days"</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"Invalid duration value"</span><span class="p">,</span> <span class="n">value</span><span class="p">)</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span>
+ <span class="n">reconvert</span> <span class="o">=</span> <span class="kc">False</span>
+ <span class="k">elif</span> <span class="s2">"d"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span>
+ <span class="k">elif</span> <span class="s2">"w"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span> <span class="o">*</span> <span class="mi">7</span>
+ <span class="k">elif</span> <span class="s2">"m"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span> <span class="o">*</span> <span class="mi">30</span>
+ <span class="k">elif</span> <span class="s2">"y"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span> <span class="o">*</span> <span class="mi">365</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"Invalid duration value"</span><span class="p">,</span> <span class="n">value</span><span class="p">)</span>
+
+ <span class="k">if</span> <span class="n">target</span> <span class="o">==</span> <span class="s2">"hours"</span> <span class="ow">and</span> <span class="n">reconvert</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span> <span class="o">*</span> <span class="mi">24</span>
+
+ <span class="k">return</span> <span class="n">num</span>
+</code></pre></div> 2023, Semaine 40 2023-10-08T00:00:00+02:00 2023-10-08T00:00:00+02:00 tag:blog.notmyidea.org,2023-10-08:/2023-semaine-40.html
<p>Je me suis réservé les matins pour travailler, et je suis content du rythme que ça à donné à ma semaine. C’était aussi le retour des pomodoros !</p>
<h2 id="ce-qui-sest-passe">Ce qui s’est passé</h2>
<dl>
diff --git a/feeds/.rss.xml b/feeds/.rss.xml
index 2e4bf02..7bafedc 100644
--- a/feeds/.rss.xml
+++ b/feeds/.rss.xml
@@ -7,9 +7,10 @@
</code></pre></div>
<p>The code :</p>
-<p><span class="dquo">“</span>`python
-from typing import Literal</p>
-<p>def string_to_duration …</p>Wed, 11 Oct 2023 00:00:00 +0200 tag:blog.notmyidea.org,2023-10-11:/convert-string-to-duration.html code python conversion 2023, Semaine 40 https://blog.notmyidea.org/2023-semaine-40.html
+<div class="highlight"><pre><span></span><code><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Literal</span>
+
+
+<span class="k">def</span> <span class="nf">string_to_duration</span><span class="p">(</span><span class="n">value …</span></code></pre></div> Wed, 11 Oct 2023 00:00:00 +0200 tag:blog.notmyidea.org,2023-10-11:/convert-string-to-duration.html code python conversion 2023, Semaine 40 https://blog.notmyidea.org/2023-semaine-40.html
<p>Je me suis réservé les matins pour travailler, et je suis content du rythme que ça à donné à ma semaine. C’était aussi le retour des pomodoros !</p>
<h2 id="ce-qui-sest-passe">Ce qui s’est passé</h2>
<dl>
diff --git a/feeds/all-en.atom.xml b/feeds/all-en.atom.xml
index e293fa7..d4d7ad7 100644
--- a/feeds/all-en.atom.xml
+++ b/feeds/all-en.atom.xml
@@ -7,9 +7,10 @@
</code></pre></div>
<p>The code :</p>
-<p><span class="dquo">“</span>`python
-from typing import Literal</p>
-<p>def string_to_duration …</p> <p>I found myself wanting to convert a string to a duration (int), for some configuration.</p>
+<div class="highlight"><pre><span></span><code><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Literal</span>
+
+
+<span class="k">def</span> <span class="nf">string_to_duration</span><span class="p">(</span><span class="n">value …</span></code></pre></div><p>I found myself wanting to convert a string to a duration (int), for some configuration.</p>
<p>Something you can call like this:</p>
<div class="highlight"><pre><span></span><code><span class="n">string_to_duration</span><span class="p">(</span><span class="s2">"1d"</span><span class="p">,</span> <span class="n">target</span><span class="o">=</span><span class="s2">"days"</span><span class="p">)</span> <span class="c1"># returns 1</span>
<span class="n">string_to_duration</span><span class="p">(</span><span class="s2">"1d"</span><span class="p">,</span> <span class="n">target</span><span class="o">=</span><span class="s2">"hours"</span><span class="p">)</span> <span class="c1"># returns 24</span>
@@ -17,37 +18,37 @@ from typing import Literal</p>
</code></pre></div>
<p>The code :</p>
-<p><span class="dquo">“</span>`python
-from typing import Literal</p>
-<p>def string_to_duration(value: str, target: Literal[“days”, “hours”]):
- “”“Convert a string to a number of hours, or days”“”
- num = int(“”.join(filter(str.isdigit, value)))</p>
-<div class="highlight"><pre><span></span><code><span class="k">if</span><span class="w"> </span><span class="nv">target</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="s2">"hours"</span>:
-<span class="w"> </span><span class="nv">reconvert</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">True</span>
+<div class="highlight"><pre><span></span><code><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Literal</span>
-<span class="k">if</span><span class="w"> </span><span class="s2">"h"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="nv">target</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="s2">"days"</span>:
-<span class="w"> </span><span class="nv">raise</span><span class="w"> </span><span class="nv">ValueError</span><span class="ss">(</span><span class="s2">"Invalid duration value"</span>,<span class="w"> </span><span class="nv">value</span><span class="ss">)</span>
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span>
-<span class="w"> </span><span class="nv">reconvert</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">False</span>
-<span class="nv">elif</span><span class="w"> </span><span class="s2">"d"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span>
-<span class="nv">elif</span><span class="w"> </span><span class="s2">"w"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="mi">7</span>
-<span class="nv">elif</span><span class="w"> </span><span class="s2">"m"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="mi">30</span>
-<span class="nv">elif</span><span class="w"> </span><span class="s2">"y"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="mi">365</span>
-<span class="k">else</span>:
-<span class="w"> </span><span class="nv">raise</span><span class="w"> </span><span class="nv">ValueError</span><span class="ss">(</span><span class="s2">"Invalid duration value"</span>,<span class="w"> </span><span class="nv">value</span><span class="ss">)</span>
-<span class="k">if</span><span class="w"> </span><span class="nv">target</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="s2">"hours"</span><span class="w"> </span><span class="nv">and</span><span class="w"> </span><span class="nv">reconvert</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="mi">24</span>
+<span class="k">def</span> <span class="nf">string_to_duration</span><span class="p">(</span><span class="n">value</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">target</span><span class="p">:</span> <span class="n">Literal</span><span class="p">[</span><span class="s2">"days"</span><span class="p">,</span> <span class="s2">"hours"</span><span class="p">]):</span>
+<span class="w"> </span><span class="sd">"""Convert a string to a number of hours, or days"""</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="s2">""</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="nb">filter</span><span class="p">(</span><span class="nb">str</span><span class="o">.</span><span class="n">isdigit</span><span class="p">,</span> <span class="n">value</span><span class="p">)))</span>
-<span class="k">return</span><span class="w"> </span><span class="nv">num</span>
-</code></pre></div>
+ <span class="k">if</span> <span class="n">target</span> <span class="o">==</span> <span class="s2">"hours"</span><span class="p">:</span>
+ <span class="n">reconvert</span> <span class="o">=</span> <span class="kc">True</span>
-<p><span class="dquo">“</span>““</p> 2023, Semaine 40 2023-10-08T00:00:00+02:00 2023-10-08T00:00:00+02:00 tag:blog.notmyidea.org,2023-10-08:/2023-semaine-40.html
+ <span class="k">if</span> <span class="s2">"h"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="k">if</span> <span class="n">target</span> <span class="o">==</span> <span class="s2">"days"</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"Invalid duration value"</span><span class="p">,</span> <span class="n">value</span><span class="p">)</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span>
+ <span class="n">reconvert</span> <span class="o">=</span> <span class="kc">False</span>
+ <span class="k">elif</span> <span class="s2">"d"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span>
+ <span class="k">elif</span> <span class="s2">"w"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span> <span class="o">*</span> <span class="mi">7</span>
+ <span class="k">elif</span> <span class="s2">"m"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span> <span class="o">*</span> <span class="mi">30</span>
+ <span class="k">elif</span> <span class="s2">"y"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span> <span class="o">*</span> <span class="mi">365</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"Invalid duration value"</span><span class="p">,</span> <span class="n">value</span><span class="p">)</span>
+
+ <span class="k">if</span> <span class="n">target</span> <span class="o">==</span> <span class="s2">"hours"</span> <span class="ow">and</span> <span class="n">reconvert</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span> <span class="o">*</span> <span class="mi">24</span>
+
+ <span class="k">return</span> <span class="n">num</span>
+</code></pre></div> 2023, Semaine 40 2023-10-08T00:00:00+02:00 2023-10-08T00:00:00+02:00 tag:blog.notmyidea.org,2023-10-08:/2023-semaine-40.html
<p>Je me suis réservé les matins pour travailler, et je suis content du rythme que ça à donné à ma semaine. C’était aussi le retour des pomodoros !</p>
<h2 id="ce-qui-sest-passe">Ce qui s’est passé</h2>
<dl>
diff --git a/feeds/all.atom.xml b/feeds/all.atom.xml
index 761044a..74bd02a 100644
--- a/feeds/all.atom.xml
+++ b/feeds/all.atom.xml
@@ -7,9 +7,10 @@
</code></pre></div>
<p>The code :</p>
-<p><span class="dquo">“</span>`python
-from typing import Literal</p>
-<p>def string_to_duration …</p> <p>I found myself wanting to convert a string to a duration (int), for some configuration.</p>
+<div class="highlight"><pre><span></span><code><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Literal</span>
+
+
+<span class="k">def</span> <span class="nf">string_to_duration</span><span class="p">(</span><span class="n">value …</span></code></pre></div><p>I found myself wanting to convert a string to a duration (int), for some configuration.</p>
<p>Something you can call like this:</p>
<div class="highlight"><pre><span></span><code><span class="n">string_to_duration</span><span class="p">(</span><span class="s2">"1d"</span><span class="p">,</span> <span class="n">target</span><span class="o">=</span><span class="s2">"days"</span><span class="p">)</span> <span class="c1"># returns 1</span>
<span class="n">string_to_duration</span><span class="p">(</span><span class="s2">"1d"</span><span class="p">,</span> <span class="n">target</span><span class="o">=</span><span class="s2">"hours"</span><span class="p">)</span> <span class="c1"># returns 24</span>
@@ -17,37 +18,37 @@ from typing import Literal</p>
</code></pre></div>
<p>The code :</p>
-<p><span class="dquo">“</span>`python
-from typing import Literal</p>
-<p>def string_to_duration(value: str, target: Literal[“days”, “hours”]):
- “”“Convert a string to a number of hours, or days”“”
- num = int(“”.join(filter(str.isdigit, value)))</p>
-<div class="highlight"><pre><span></span><code><span class="k">if</span><span class="w"> </span><span class="nv">target</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="s2">"hours"</span>:
-<span class="w"> </span><span class="nv">reconvert</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">True</span>
+<div class="highlight"><pre><span></span><code><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Literal</span>
-<span class="k">if</span><span class="w"> </span><span class="s2">"h"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="nv">target</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="s2">"days"</span>:
-<span class="w"> </span><span class="nv">raise</span><span class="w"> </span><span class="nv">ValueError</span><span class="ss">(</span><span class="s2">"Invalid duration value"</span>,<span class="w"> </span><span class="nv">value</span><span class="ss">)</span>
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span>
-<span class="w"> </span><span class="nv">reconvert</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">False</span>
-<span class="nv">elif</span><span class="w"> </span><span class="s2">"d"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span>
-<span class="nv">elif</span><span class="w"> </span><span class="s2">"w"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="mi">7</span>
-<span class="nv">elif</span><span class="w"> </span><span class="s2">"m"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="mi">30</span>
-<span class="nv">elif</span><span class="w"> </span><span class="s2">"y"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="mi">365</span>
-<span class="k">else</span>:
-<span class="w"> </span><span class="nv">raise</span><span class="w"> </span><span class="nv">ValueError</span><span class="ss">(</span><span class="s2">"Invalid duration value"</span>,<span class="w"> </span><span class="nv">value</span><span class="ss">)</span>
-<span class="k">if</span><span class="w"> </span><span class="nv">target</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="s2">"hours"</span><span class="w"> </span><span class="nv">and</span><span class="w"> </span><span class="nv">reconvert</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="mi">24</span>
+<span class="k">def</span> <span class="nf">string_to_duration</span><span class="p">(</span><span class="n">value</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">target</span><span class="p">:</span> <span class="n">Literal</span><span class="p">[</span><span class="s2">"days"</span><span class="p">,</span> <span class="s2">"hours"</span><span class="p">]):</span>
+<span class="w"> </span><span class="sd">"""Convert a string to a number of hours, or days"""</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="s2">""</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="nb">filter</span><span class="p">(</span><span class="nb">str</span><span class="o">.</span><span class="n">isdigit</span><span class="p">,</span> <span class="n">value</span><span class="p">)))</span>
-<span class="k">return</span><span class="w"> </span><span class="nv">num</span>
-</code></pre></div>
+ <span class="k">if</span> <span class="n">target</span> <span class="o">==</span> <span class="s2">"hours"</span><span class="p">:</span>
+ <span class="n">reconvert</span> <span class="o">=</span> <span class="kc">True</span>
-<p><span class="dquo">“</span>““</p> 2023, Semaine 40 2023-10-08T00:00:00+02:00 2023-10-08T00:00:00+02:00 tag:blog.notmyidea.org,2023-10-08:/2023-semaine-40.html
+ <span class="k">if</span> <span class="s2">"h"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="k">if</span> <span class="n">target</span> <span class="o">==</span> <span class="s2">"days"</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"Invalid duration value"</span><span class="p">,</span> <span class="n">value</span><span class="p">)</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span>
+ <span class="n">reconvert</span> <span class="o">=</span> <span class="kc">False</span>
+ <span class="k">elif</span> <span class="s2">"d"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span>
+ <span class="k">elif</span> <span class="s2">"w"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span> <span class="o">*</span> <span class="mi">7</span>
+ <span class="k">elif</span> <span class="s2">"m"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span> <span class="o">*</span> <span class="mi">30</span>
+ <span class="k">elif</span> <span class="s2">"y"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span> <span class="o">*</span> <span class="mi">365</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"Invalid duration value"</span><span class="p">,</span> <span class="n">value</span><span class="p">)</span>
+
+ <span class="k">if</span> <span class="n">target</span> <span class="o">==</span> <span class="s2">"hours"</span> <span class="ow">and</span> <span class="n">reconvert</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span> <span class="o">*</span> <span class="mi">24</span>
+
+ <span class="k">return</span> <span class="n">num</span>
+</code></pre></div> 2023, Semaine 40 2023-10-08T00:00:00+02:00 2023-10-08T00:00:00+02:00 tag:blog.notmyidea.org,2023-10-08:/2023-semaine-40.html
<p>Je me suis réservé les matins pour travailler, et je suis content du rythme que ça à donné à ma semaine. C’était aussi le retour des pomodoros !</p>
<h2 id="ce-qui-sest-passe">Ce qui s’est passé</h2>
<dl>
diff --git a/feeds/code.atom.xml b/feeds/code.atom.xml
index 70015f3..637306b 100644
--- a/feeds/code.atom.xml
+++ b/feeds/code.atom.xml
@@ -7,9 +7,10 @@
</code></pre></div>
<p>The code :</p>
-<p><span class="dquo">“</span>`python
-from typing import Literal</p>
-<p>def string_to_duration …</p> <p>I found myself wanting to convert a string to a duration (int), for some configuration.</p>
+<div class="highlight"><pre><span></span><code><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Literal</span>
+
+
+<span class="k">def</span> <span class="nf">string_to_duration</span><span class="p">(</span><span class="n">value …</span></code></pre></div><p>I found myself wanting to convert a string to a duration (int), for some configuration.</p>
<p>Something you can call like this:</p>
<div class="highlight"><pre><span></span><code><span class="n">string_to_duration</span><span class="p">(</span><span class="s2">"1d"</span><span class="p">,</span> <span class="n">target</span><span class="o">=</span><span class="s2">"days"</span><span class="p">)</span> <span class="c1"># returns 1</span>
<span class="n">string_to_duration</span><span class="p">(</span><span class="s2">"1d"</span><span class="p">,</span> <span class="n">target</span><span class="o">=</span><span class="s2">"hours"</span><span class="p">)</span> <span class="c1"># returns 24</span>
@@ -17,37 +18,37 @@ from typing import Literal</p>
</code></pre></div>
<p>The code :</p>
-<p><span class="dquo">“</span>`python
-from typing import Literal</p>
-<p>def string_to_duration(value: str, target: Literal[“days”, “hours”]):
- “”“Convert a string to a number of hours, or days”“”
- num = int(“”.join(filter(str.isdigit, value)))</p>
-<div class="highlight"><pre><span></span><code><span class="k">if</span><span class="w"> </span><span class="nv">target</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="s2">"hours"</span>:
-<span class="w"> </span><span class="nv">reconvert</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">True</span>
+<div class="highlight"><pre><span></span><code><span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Literal</span>
-<span class="k">if</span><span class="w"> </span><span class="s2">"h"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="nv">target</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="s2">"days"</span>:
-<span class="w"> </span><span class="nv">raise</span><span class="w"> </span><span class="nv">ValueError</span><span class="ss">(</span><span class="s2">"Invalid duration value"</span>,<span class="w"> </span><span class="nv">value</span><span class="ss">)</span>
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span>
-<span class="w"> </span><span class="nv">reconvert</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">False</span>
-<span class="nv">elif</span><span class="w"> </span><span class="s2">"d"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span>
-<span class="nv">elif</span><span class="w"> </span><span class="s2">"w"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="mi">7</span>
-<span class="nv">elif</span><span class="w"> </span><span class="s2">"m"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="mi">30</span>
-<span class="nv">elif</span><span class="w"> </span><span class="s2">"y"</span><span class="w"> </span><span class="nv">in</span><span class="w"> </span><span class="nv">value</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="mi">365</span>
-<span class="k">else</span>:
-<span class="w"> </span><span class="nv">raise</span><span class="w"> </span><span class="nv">ValueError</span><span class="ss">(</span><span class="s2">"Invalid duration value"</span>,<span class="w"> </span><span class="nv">value</span><span class="ss">)</span>
-<span class="k">if</span><span class="w"> </span><span class="nv">target</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="s2">"hours"</span><span class="w"> </span><span class="nv">and</span><span class="w"> </span><span class="nv">reconvert</span>:
-<span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">num</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="mi">24</span>
+<span class="k">def</span> <span class="nf">string_to_duration</span><span class="p">(</span><span class="n">value</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span> <span class="n">target</span><span class="p">:</span> <span class="n">Literal</span><span class="p">[</span><span class="s2">"days"</span><span class="p">,</span> <span class="s2">"hours"</span><span class="p">]):</span>
+<span class="w"> </span><span class="sd">"""Convert a string to a number of hours, or days"""</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="s2">""</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="nb">filter</span><span class="p">(</span><span class="nb">str</span><span class="o">.</span><span class="n">isdigit</span><span class="p">,</span> <span class="n">value</span><span class="p">)))</span>
-<span class="k">return</span><span class="w"> </span><span class="nv">num</span>
-</code></pre></div>
+ <span class="k">if</span> <span class="n">target</span> <span class="o">==</span> <span class="s2">"hours"</span><span class="p">:</span>
+ <span class="n">reconvert</span> <span class="o">=</span> <span class="kc">True</span>
-<p><span class="dquo">“</span>““</p> llm command-line tips 2023-09-27T00:00:00+02:00 2023-09-27T00:00:00+02:00 tag:blog.notmyidea.org,2023-09-27:/llm-command-line-tips.html <p>I’m using <a href="https://llm.datasette.io">llm</a> more and more, and today I had to find back prompts I used in the past. Here is a command I’ve been using, which allows me to filter the results based on what I want. It leverages <a href="https://sqlutils.datasette.io">sql-utils</a>, a cli tool which is able to …</p> <p>I’m using <a href="https://llm.datasette.io">llm</a> more and more, and today I had to find back prompts I used in the past. Here is a command I’ve been using, which allows me to filter the results based on what I want. It leverages <a href="https://sqlutils.datasette.io">sql-utils</a>, a cli tool which is able to talk to a <span class="caps">SQLITE</span> database and answer in json, and <a href="https://github.com/jqlang/jq">jq</a> a command-line tool capable of doing requests for json.</p>
+ <span class="k">if</span> <span class="s2">"h"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="k">if</span> <span class="n">target</span> <span class="o">==</span> <span class="s2">"days"</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"Invalid duration value"</span><span class="p">,</span> <span class="n">value</span><span class="p">)</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span>
+ <span class="n">reconvert</span> <span class="o">=</span> <span class="kc">False</span>
+ <span class="k">elif</span> <span class="s2">"d"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span>
+ <span class="k">elif</span> <span class="s2">"w"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span> <span class="o">*</span> <span class="mi">7</span>
+ <span class="k">elif</span> <span class="s2">"m"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span> <span class="o">*</span> <span class="mi">30</span>
+ <span class="k">elif</span> <span class="s2">"y"</span> <span class="ow">in</span> <span class="n">value</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span> <span class="o">*</span> <span class="mi">365</span>
+ <span class="k">else</span><span class="p">:</span>
+ <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s2">"Invalid duration value"</span><span class="p">,</span> <span class="n">value</span><span class="p">)</span>
+
+ <span class="k">if</span> <span class="n">target</span> <span class="o">==</span> <span class="s2">"hours"</span> <span class="ow">and</span> <span class="n">reconvert</span><span class="p">:</span>
+ <span class="n">num</span> <span class="o">=</span> <span class="n">num</span> <span class="o">*</span> <span class="mi">24</span>
+
+ <span class="k">return</span> <span class="n">num</span>
+</code></pre></div> llm command-line tips 2023-09-27T00:00:00+02:00 2023-09-27T00:00:00+02:00 tag:blog.notmyidea.org,2023-09-27:/llm-command-line-tips.html <p>I’m using <a href="https://llm.datasette.io">llm</a> more and more, and today I had to find back prompts I used in the past. Here is a command I’ve been using, which allows me to filter the results based on what I want. It leverages <a href="https://sqlutils.datasette.io">sql-utils</a>, a cli tool which is able to …</p> <p>I’m using <a href="https://llm.datasette.io">llm</a> more and more, and today I had to find back prompts I used in the past. Here is a command I’ve been using, which allows me to filter the results based on what I want. It leverages <a href="https://sqlutils.datasette.io">sql-utils</a>, a cli tool which is able to talk to a <span class="caps">SQLITE</span> database and answer in json, and <a href="https://github.com/jqlang/jq">jq</a> a command-line tool capable of doing requests for json.</p>
<p>All in all, it’s pretty satisfying to use. I finally got a simple way to query databases! I’m also using <a href="https://github.com/charmbracelet/glow">glow</a>, which is capable of transforming markdown into a better version on the terminal.</p>
<div class="highlight"><pre><span></span><code>sqlite-utils<span class="w"> </span><span class="s2">"</span><span class="k">$(</span>llm<span class="w"> </span>logs<span class="w"> </span>path<span class="k">)</span><span class="s2">"</span><span class="w"> </span><span class="s2">"SELECT * FROM responses WHERE prompt LIKE '%search%'"</span><span class="w"> </span><span class="p">|</span><span class="w"> </span>jq<span class="w"> </span><span class="s1">'.[].response'</span><span class="w"> </span>-r<span class="w"> </span><span class="p">|</span><span class="w"> </span>glow
</code></pre></div>
diff --git a/tag/conversion.html b/tag/conversion.html
index bd1fc3e..a52c0d6 100644
--- a/tag/conversion.html
+++ b/tag/conversion.html
@@ -37,9 +37,10 @@
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …
The code :
-“`python -from typing import Literal
-def string_to_duration …
+from typing import Literal
+
+
+def string_to_duration(value …