add sequence function seq
This commit is contained in:
34
docs/build/html/_modules/data.html
vendored
34
docs/build/html/_modules/data.html
vendored
@@ -35,13 +35,13 @@
|
||||
<h1>Source code for data</h1><div class="highlight"><pre>
|
||||
<span></span><span class="ch">#!/usr/bin/env python</span>
|
||||
<span class="c1"># -*- coding: utf-8 -*-</span>
|
||||
<span class="sd">"""Read and write data to or from file.</span>
|
||||
<span class="sd">"""Read and write data to or from file and manipulate data structures.</span>
|
||||
|
||||
<span class="sd">:Date: 2019-07-29</span>
|
||||
<span class="sd">:Date: 2019-10-11</span>
|
||||
|
||||
<span class="sd">.. module:: data</span>
|
||||
<span class="sd"> :platform: *nix, Windows</span>
|
||||
<span class="sd"> :synopsis: Handle data files.</span>
|
||||
<span class="sd"> :synopsis: Handle data files and structures.</span>
|
||||
|
||||
<span class="sd">.. moduleauthor:: Daniel Weschke <daniel.weschke@directbox.de></span>
|
||||
<span class="sd">"""</span>
|
||||
@@ -155,6 +155,34 @@
|
||||
<span class="n">length</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">k</span><span class="o">/</span><span class="n">n</span><span class="p">)</span>
|
||||
<span class="k">return</span> <span class="p">[</span><span class="n">lst</span><span class="p">[</span><span class="n">i</span><span class="o">*</span><span class="n">n</span><span class="p">:</span><span class="n">i</span><span class="o">*</span><span class="n">n</span><span class="o">+</span><span class="n">n</span><span class="p">]</span> <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">length</span><span class="p">)]</span></div>
|
||||
|
||||
<div class="viewcode-block" id="seq"><a class="viewcode-back" href="../data.html#data.seq">[docs]</a><span class="k">def</span> <span class="nf">seq</span><span class="p">(</span><span class="n">start</span><span class="p">,</span> <span class="n">stop</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">step</span><span class="o">=</span><span class="mi">1</span><span class="p">):</span>
|
||||
<span class="sa">r</span><span class="sd">"""Create an arithmetic bounded sequence.</span>
|
||||
|
||||
<span class="sd"> The sequence is one of the following;</span>
|
||||
|
||||
<span class="sd"> - empty :math:`\{\}=\emptyset`, if start and stop are the same</span>
|
||||
<span class="sd"> - degenerate :math:`\{a\}`, if the sequence has only one element.</span>
|
||||
<span class="sd"> - left-close and right-open :math:`[a, b)`</span>
|
||||
|
||||
<span class="sd"> :param start: start of the sequence, the lower bound. If only start</span>
|
||||
<span class="sd"> is given than it is interpreted as stop and start will be 0.</span>
|
||||
<span class="sd"> :type start: int or float</span>
|
||||
<span class="sd"> :param stop: stop of sequence, the upper bound.</span>
|
||||
<span class="sd"> :type stop: int or float</span>
|
||||
<span class="sd"> :param step: step size, the common difference (constant difference</span>
|
||||
<span class="sd"> between consecutive terms).</span>
|
||||
<span class="sd"> :type step: int or float</span>
|
||||
<span class="sd"> :returns: arithmetic bounded sequence</span>
|
||||
<span class="sd"> :rtype: list</span>
|
||||
<span class="sd"> """</span>
|
||||
<span class="k">if</span> <span class="n">stop</span> <span class="ow">is</span> <span class="kc">None</span><span class="p">:</span>
|
||||
<span class="k">return</span> <span class="n">seq</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="n">start</span><span class="p">,</span> <span class="n">step</span><span class="p">)</span>
|
||||
<span class="n">n</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">math</span><span class="o">.</span><span class="n">ceil</span><span class="p">((</span><span class="n">stop</span> <span class="o">-</span> <span class="n">start</span><span class="p">)</span><span class="o">/</span><span class="nb">float</span><span class="p">(</span><span class="n">step</span><span class="p">)))</span>
|
||||
<span class="n">lst</span> <span class="o">=</span> <span class="p">[]</span>
|
||||
<span class="k">if</span> <span class="n">n</span> <span class="o">></span> <span class="mi">0</span><span class="p">:</span>
|
||||
<span class="n">lst</span> <span class="o">=</span> <span class="p">[</span><span class="n">start</span> <span class="o">+</span> <span class="n">step</span><span class="o">*</span><span class="n">i</span> <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">n</span><span class="p">)]</span>
|
||||
<span class="k">return</span> <span class="n">lst</span></div>
|
||||
|
||||
<div class="viewcode-block" id="unique_ending"><a class="viewcode-back" href="../data.html#data.unique_ending">[docs]</a><span class="k">def</span> <span class="nf">unique_ending</span><span class="p">(</span><span class="n">ids</span><span class="p">,</span> <span class="n">n</span><span class="o">=</span><span class="mi">1</span><span class="p">):</span>
|
||||
<span class="sd">"""From id list get list with unique ending.</span>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user