|
994 | 994 | <li><strong>Function field() is needed because <code class="python hljs"><span class="hljs-string">'<attr_name>: list = []'</span></code> would make a list that is shared among all instances.</strong></li>
|
995 | 995 | <li><strong>Default_factory can be any <a href="#callable">callable</a>.</strong></li>
|
996 | 996 | </ul>
|
| 997 | +<div><h4 id="inline-1">Inline:</h4><pre><code class="python language-python hljs"><code class="python language-python hljs"><span class="hljs-keyword">from</span> dataclasses <span class="hljs-keyword">import</span> make_dataclass |
| 998 | +<class> = make_dataclass<span class="hljs-params">(<span class="hljs-string">'<class_name>'</span>, <list_of_attribute_names>)</span></code></code></pre></div> |
| 999 | + |
997 | 1000 | <div><h3 id="slots">Slots</h3><p><strong>Mechanism that restricts objects to attributes listed in 'slots' and significantly reduces their memory footprint.</strong></p><pre><code class="python language-python hljs"><span class="hljs-class"><span class="hljs-keyword">class</span> <span class="hljs-title">MyClassWithSlots</span>:</span>
|
998 | 1001 | __slots__ = [<span class="hljs-string">'a'</span>]
|
999 | 1002 | <span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">__init__</span><span class="hljs-params">(self)</span>:</span>
|
|
1235 | 1238 | member_values = [a.value <span class="hljs-keyword">for</span> a <span class="hljs-keyword">in</span> <enum>]
|
1236 | 1239 | random_member = random.choice(list(<enum>))
|
1237 | 1240 | </code></pre>
|
1238 |
| -<div><h3 id="inline-1">Inline</h3><pre><code class="python language-python hljs">Cutlery = Enum(<span class="hljs-string">'Cutlery'</span>, [<span class="hljs-string">'fork'</span>, <span class="hljs-string">'knife'</span>, <span class="hljs-string">'spoon'</span>]) |
| 1241 | +<div><h3 id="inline-2">Inline</h3><pre><code class="python language-python hljs">Cutlery = Enum(<span class="hljs-string">'Cutlery'</span>, [<span class="hljs-string">'fork'</span>, <span class="hljs-string">'knife'</span>, <span class="hljs-string">'spoon'</span>]) |
1239 | 1242 | Cutlery = Enum(<span class="hljs-string">'Cutlery'</span>, <span class="hljs-string">'fork knife spoon'</span>)
|
1240 | 1243 | Cutlery = Enum(<span class="hljs-string">'Cutlery'</span>, {<span class="hljs-string">'fork'</span>: <span class="hljs-number">1</span>, <span class="hljs-string">'knife'</span>: <span class="hljs-number">2</span>, <span class="hljs-string">'spoon'</span>: <span class="hljs-number">3</span>})
|
1241 | 1244 | </code></pre></div>
|
|
1940 | 1943 | reader(adder(printer())) <span class="hljs-comment"># 100, 101, ..., 109</span>
|
1941 | 1944 | </code></pre></div>
|
1942 | 1945 |
|
1943 |
| -<p><br></p> |
1944 | 1946 | <div><h1 id="libraries">Libraries</h1><div><h2 id="progressbar"><a href="#progressbar" name="progressbar">#</a>Progress Bar</h2><pre><code class="python language-python hljs"><span class="hljs-comment"># $ pip3 install tqdm</span>
|
1945 | 1947 | <span class="hljs-keyword">from</span> tqdm <span class="hljs-keyword">import</span> tqdm
|
1946 | 1948 | <span class="hljs-keyword">from</span> time <span class="hljs-keyword">import</span> sleep
|
|
1965 | 1967 | rows = csv.reader(file)
|
1966 | 1968 | header = [a.title() <span class="hljs-keyword">for</span> a <span class="hljs-keyword">in</span> next(rows)]
|
1967 | 1969 | table = tabulate.tabulate(rows, header)
|
1968 |
| -print(table) |
| 1970 | + print(table) |
1969 | 1971 | </code></pre></div></div>
|
1970 | 1972 |
|
1971 | 1973 |
|
|
2382 | 2384 | <span class="hljs-keyword">from</span> collections <span class="hljs-keyword">import</span> namedtuple
|
2383 | 2385 | <span class="hljs-keyword">from</span> dataclasses <span class="hljs-keyword">import</span> make_dataclass
|
2384 | 2386 | <span class="hljs-keyword">from</span> enum <span class="hljs-keyword">import</span> Enum
|
| 2387 | +<span class="hljs-keyword">from</span> sys <span class="hljs-keyword">import</span> argv |
2385 | 2388 | <span class="hljs-keyword">import</span> re
|
2386 |
| -<span class="hljs-keyword">import</span> sys |
2387 | 2389 |
|
2388 | 2390 |
|
2389 | 2391 | <span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">main</span><span class="hljs-params">()</span>:</span>
|
|
0 commit comments