Changeset eca358d in flex_extract.git for Documentation/html/_modules/tools.html
- Timestamp:
- Feb 1, 2020, 9:32:17 PM (4 years ago)
- Branches:
- master, ctbto, dev
- Children:
- 072cbea
- Parents:
- 53d3b2a
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Documentation/html/_modules/tools.html
r30f7911 reca358d 231 231 <span class="kn">import</span> <span class="nn">subprocess</span> 232 232 <span class="kn">import</span> <span class="nn">traceback</span> 233 <span class="c1"># pylint: disable=unused-import</span> 233 234 <span class="k">try</span><span class="p">:</span> 234 235 <span class="kn">import</span> <span class="nn">exceptions</span> 235 236 <span class="k">except</span> <span class="ne">ImportError</span><span class="p">:</span> 236 237 <span class="kn">import</span> <span class="nn">builtins</span> <span class="k">as</span> <span class="nn">exceptions</span> 238 <span class="c1"># pylint: enable=unused-import</span> 237 239 <span class="kn">from</span> <span class="nn">datetime</span> <span class="k">import</span> <span class="n">datetime</span><span class="p">,</span> <span class="n">timedelta</span> 238 240 <span class="kn">from</span> <span class="nn">argparse</span> <span class="k">import</span> <span class="n">ArgumentParser</span><span class="p">,</span> <span class="n">ArgumentDefaultsHelpFormatter</span> … … 430 432 <span class="sd"> and destination for ECMWF server environments.</span> 431 433 <span class="sd"> '''</span> 432 <span class="n">envs</span> <span class="o">=</span> <span class="p">{}</span>434 <span class="n">envs</span> <span class="o">=</span> <span class="p">{}</span> 433 435 <span class="k">try</span><span class="p">:</span> 434 436 <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="n">filepath</span><span class="p">,</span> <span class="s1">'r'</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span> … … 441 443 442 444 <span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">(</span><span class="s1">'</span><span class="se">\n</span><span class="s1">... Error occured while trying to read ECMWF_ENV '</span> 443 445 <span class="s1">'file: '</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">filepath</span><span class="p">))</span> 444 446 445 447 <span class="k">return</span> <span class="n">envs</span></div> … … 464 466 <span class="nb">print</span><span class="p">(</span><span class="s2">"... clean inputdir!"</span><span class="p">)</span> 465 467 466 <span class="n">cleanlist</span> <span class="o">=</span> <span class="p">[</span><span class="n">file</span> <span class="k">for</span> <span class="n">file</span> <span class="ow">in</span> <span class="n">glob</span><span class="o">.</span><span class="n">glob</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">c</span><span class="o">.</span><span class="n">inputdir</span><span class="p">,</span> <span class="s2">"*"</span><span class="p">))</span> 467 <span class="k">if</span> <span class="ow">not</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">basename</span><span class="p">(</span><span class="n">file</span><span class="p">)</span><span class="o">.</span><span class="n">startswith</span><span class="p">(</span><span class="n">c</span><span class="o">.</span><span class="n">prefix</span><span class="p">)]</span> 468 <span class="n">cleanlist</span> <span class="o">=</span> <span class="p">[</span><span class="n">filename</span> <span class="k">for</span> <span class="n">filename</span> <span class="ow">in</span> 469 <span class="n">glob</span><span class="o">.</span><span class="n">glob</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">c</span><span class="o">.</span><span class="n">inputdir</span><span class="p">,</span> <span class="s2">"*"</span><span class="p">))</span> 470 <span class="k">if</span> <span class="ow">not</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">basename</span><span class="p">(</span><span class="n">filename</span><span class="p">)</span><span class="o">.</span><span class="n">startswith</span><span class="p">(</span><span class="n">c</span><span class="o">.</span><span class="n">prefix</span><span class="p">)]</span> 468 471 469 472 <span class="k">if</span> <span class="n">cleanlist</span><span class="p">:</span> … … 533 536 <span class="n">stderr</span><span class="o">=</span><span class="n">subprocess</span><span class="o">.</span><span class="n">PIPE</span><span class="p">,</span> 534 537 <span class="n">bufsize</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span> 535 <span class="n">pout</span> <span class="o">=</span> <span class="n">p</span><span class="o">.</span><span class="n">communicate</span><span class="p">(</span><span class="nb">input</span><span class="o">=</span><span class="n">message</span> <span class="o">.</span><span class="n">encode</span><span class="p">()</span><span class="o">+</span> <span class="s1">'</span><span class="se">\n\n</span><span class="s1">'</span><span class="p">)[</span><span class="mi">0</span><span class="p">]</span>538 <span class="n">pout</span> <span class="o">=</span> <span class="n">p</span><span class="o">.</span><span class="n">communicate</span><span class="p">(</span><span class="nb">input</span><span class="o">=</span><span class="n">message</span> <span class="o">+</span> <span class="s1">'</span><span class="se">\n\n</span><span class="s1">'</span><span class="p">)[</span><span class="mi">0</span><span class="p">]</span> 536 539 <span class="k">except</span> <span class="ne">ValueError</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span> 537 540 <span class="nb">print</span><span class="p">(</span><span class="s1">'... ERROR: '</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">e</span><span class="p">))</span> … … 693 696 <span class="k">return</span> <span class="p">[]</span> 694 697 <span class="k">if</span> <span class="ow">not</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">pars</span><span class="p">,</span> <span class="nb">str</span><span class="p">):</span> 695 <span class="n">pars</span> <span class="o">=</span><span class="nb">str</span><span class="p">(</span><span class="n">pars</span><span class="p">)</span>698 <span class="n">pars</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">pars</span><span class="p">)</span> 696 699 697 700 <span class="n">cpar</span> <span class="o">=</span> <span class="n">pars</span><span class="o">.</span><span class="n">upper</span><span class="p">()</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s1">'/'</span><span class="p">)</span> … … 737 740 <span class="k">return</span> <span class="p">[]</span> 738 741 <span class="k">if</span> <span class="ow">not</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">pars</span><span class="p">,</span> <span class="nb">str</span><span class="p">):</span> 739 <span class="n">pars</span> <span class="o">=</span><span class="nb">str</span><span class="p">(</span><span class="n">pars</span><span class="p">)</span>742 <span class="n">pars</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">pars</span><span class="p">)</span> 740 743 741 744 <span class="n">cpar</span> <span class="o">=</span> <span class="n">pars</span><span class="o">.</span><span class="n">upper</span><span class="p">()</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s1">'/'</span><span class="p">)</span> … … 930 933 931 934 <span class="c1"># information needed from grib message</span> 932 <span class="n">keys</span> <span class="o">=</span> <span class="p">[</span> 933 <span class="s1">'Ni'</span><span class="p">,</span> 935 <span class="n">keys</span> <span class="o">=</span> <span class="p">[</span><span class="s1">'Ni'</span><span class="p">,</span> 934 936 <span class="s1">'Nj'</span><span class="p">,</span> 935 937 <span class="s1">'latitudeOfFirstGridPointInDegrees'</span><span class="p">,</span> … … 945 947 <span class="k">for</span> <span class="n">key</span> <span class="ow">in</span> <span class="n">keys</span><span class="p">:</span> 946 948 <span class="c1"># Get the value of the key in a grib message.</span> 947 <span class="n">data</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">codes_get</span><span class="p">(</span><span class="n">gid</span><span class="p">,</span> <span class="n">key</span><span class="p">)</span>948 <span class="nb">print</span><span class="p">(</span><span class="s2">"</span><span class="si">%s</span><span class="s2"> = </span><span class="si">%s</span><span class="s2">"</span> <span class="o">%</span> <span class="p">(</span><span class="n">key</span><span class="p">,</span> <span class="n">data</span><span class="p">[</span><span class="n">key</span><span class="p">]))</span>949 <span class="n">data</span><span class="p">[</span><span class="n">key</span><span class="p">]</span> <span class="o">=</span> <span class="n">codes_get</span><span class="p">(</span><span class="n">gid</span><span class="p">,</span> <span class="n">key</span><span class="p">)</span> 950 <span class="nb">print</span><span class="p">(</span><span class="s2">"</span><span class="si">%s</span><span class="s2"> = </span><span class="si">%s</span><span class="s2">"</span> <span class="o">%</span> <span class="p">(</span><span class="n">key</span><span class="p">,</span> <span class="n">data</span><span class="p">[</span><span class="n">key</span><span class="p">]))</span> 949 951 950 952 <span class="c1"># Free the memory for the message referred as gribid.</span>
Note: See TracChangeset
for help on using the changeset viewer.