This file is indexed.

/usr/share/doc/python-pint-doc/html/tutorial.html is in python-pint-doc 0.6-1ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    
    <title>Tutorial &mdash; pint 0.6 documentation</title>
    
    <link rel="stylesheet" href="_static/flasky.css" type="text/css" />
    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
    
    <script type="text/javascript">
      var DOCUMENTATION_OPTIONS = {
        URL_ROOT:    './',
        VERSION:     '0.6',
        COLLAPSE_INDEX: false,
        FILE_SUFFIX: '.html',
        HAS_SOURCE:  true
      };
    </script>
    <script type="text/javascript" src="_static/jquery.js"></script>
    <script type="text/javascript" src="_static/underscore.js"></script>
    <script type="text/javascript" src="_static/doctools.js"></script>
    <link rel="top" title="pint 0.6 documentation" href="index.html" />
    <link rel="next" title="NumPy support" href="numpy.html" />
    <link rel="prev" title="Installation" href="getting.html" />
   
  
  <link media="only screen and (max-device-width: 480px)" href="_static/small_flask.css" type= "text/css" rel="stylesheet" />

  </head>
  <body role="document">
  
  

    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="genindex.html" title="General Index"
             accesskey="I">index</a></li>
        <li class="right" >
          <a href="numpy.html" title="NumPy support"
             accesskey="N">next</a> |</li>
        <li class="right" >
          <a href="getting.html" title="Installation"
             accesskey="P">previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="index.html">pint 0.6 documentation</a> &raquo;</li> 
      </ul>
    </div>  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <div class="section" id="tutorial">
<span id="id1"></span><h1>Tutorial<a class="headerlink" href="#tutorial" title="Permalink to this headline"></a></h1>
<div class="section" id="converting-quantities">
<h2>Converting Quantities<a class="headerlink" href="#converting-quantities" title="Permalink to this headline"></a></h2>
<p>Pint has the concept of Unit Registry, an object within which units are defined and handled. You start by creating your registry:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="kn">from</span> <span class="nn">pint</span> <span class="kn">import</span> <span class="n">UnitRegistry</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">ureg</span> <span class="o">=</span> <span class="n">UnitRegistry</span><span class="p">()</span>
</pre></div>
</div>
<p>If no parameter is given to the constructor, the unit registry is populated with the default list of units and prefixes.
You can now simply use the registry in the following way:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">distance</span> <span class="o">=</span> <span class="mf">24.0</span> <span class="o">*</span> <span class="n">ureg</span><span class="o">.</span><span class="n">meter</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="n">distance</span><span class="p">)</span>
<span class="go">24.0 meter</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">time</span> <span class="o">=</span> <span class="mf">8.0</span> <span class="o">*</span> <span class="n">ureg</span><span class="o">.</span><span class="n">second</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="n">time</span><span class="p">)</span>
<span class="go">8.0 second</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="nb">repr</span><span class="p">(</span><span class="n">time</span><span class="p">))</span>
<span class="go">&lt;Quantity(8.0, &#39;second&#39;)&gt;</span>
</pre></div>
</div>
<p>In this code <cite>distance</cite> and <cite>time</cite> are physical quantities objects (<cite>Quantity</cite>). Physical quantities can be queried for the magnitude, units, and dimensionality:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="n">distance</span><span class="o">.</span><span class="n">magnitude</span><span class="p">)</span>
<span class="go">24.0</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="n">distance</span><span class="o">.</span><span class="n">units</span><span class="p">)</span>
<span class="go">meter</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="n">distance</span><span class="o">.</span><span class="n">dimensionality</span><span class="p">)</span>
<span class="go">[length]</span>
</pre></div>
</div>
<p>and can handle mathematical operations between:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">speed</span> <span class="o">=</span> <span class="n">distance</span> <span class="o">/</span> <span class="n">time</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="n">speed</span><span class="p">)</span>
<span class="go">3.0 meter / second</span>
</pre></div>
</div>
<p>As unit registry knows about the relationship between different units, you can convert quantities to the unit of choice:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">speed</span><span class="o">.</span><span class="n">to</span><span class="p">(</span><span class="n">ureg</span><span class="o">.</span><span class="n">inch</span> <span class="o">/</span> <span class="n">ureg</span><span class="o">.</span><span class="n">minute</span> <span class="p">)</span>
<span class="go">&lt;Quantity(7086.614173228345, &#39;inch / minute&#39;)&gt;</span>
</pre></div>
</div>
<p>This method returns a new object leaving the original intact as can be seen by:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="n">speed</span><span class="p">)</span>
<span class="go">3.0 meter / second</span>
</pre></div>
</div>
<p>If you want to convert in-place (i.e. without creating another object), you can use the <cite>ito</cite> method:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">speed</span><span class="o">.</span><span class="n">ito</span><span class="p">(</span><span class="n">ureg</span><span class="o">.</span><span class="n">inch</span> <span class="o">/</span> <span class="n">ureg</span><span class="o">.</span><span class="n">minute</span> <span class="p">)</span>
<span class="go">&lt;Quantity(7086.614173228345, &#39;inch / minute&#39;)&gt;</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="n">speed</span><span class="p">)</span>
<span class="go">7086.614173228345 inch / minute</span>
</pre></div>
</div>
<p>If you ask Pint to perform an invalid conversion:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">speed</span><span class="o">.</span><span class="n">to</span><span class="p">(</span><span class="n">ureg</span><span class="o">.</span><span class="n">joule</span><span class="p">)</span>
<span class="gt">Traceback (most recent call last):</span>
<span class="c">...</span>
<span class="gr">pint.pint.DimensionalityError</span>: <span class="n">Cannot convert from &#39;inch / minute&#39; (length / time) to &#39;joule&#39; (length ** 2 * mass / time ** 2)</span>
</pre></div>
</div>
<p>There are also methods &#8216;to_base_units&#8217; and &#8216;ito_base_units&#8217; which automatically convert to the reference units with the correct dimensionality:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">height</span> <span class="o">=</span> <span class="mf">5.0</span> <span class="o">*</span> <span class="n">ureg</span><span class="o">.</span><span class="n">foot</span> <span class="o">+</span> <span class="mf">9.0</span> <span class="o">*</span> <span class="n">ureg</span><span class="o">.</span><span class="n">inch</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="n">height</span><span class="p">)</span>
<span class="go">5.75 foot</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="n">height</span><span class="o">.</span><span class="n">to_base_units</span><span class="p">())</span>
<span class="go">1.7526 meter</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="n">height</span><span class="p">)</span>
<span class="go">5.75 foot</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">height</span><span class="o">.</span><span class="n">ito_base_units</span><span class="p">()</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="n">height</span><span class="p">)</span>
<span class="go">1.7526 meter</span>
</pre></div>
</div>
<p>In some cases it is useful to define physical quantities objects using the class constructor:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">Q_</span> <span class="o">=</span> <span class="n">ureg</span><span class="o">.</span><span class="n">Quantity</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">Q_</span><span class="p">(</span><span class="mf">1.78</span><span class="p">,</span> <span class="n">ureg</span><span class="o">.</span><span class="n">meter</span><span class="p">)</span> <span class="o">==</span> <span class="mf">1.78</span> <span class="o">*</span> <span class="n">ureg</span><span class="o">.</span><span class="n">meter</span>
<span class="go">True</span>
</pre></div>
</div>
<p>(I tend to abbreviate Quantity as <cite>Q_</cite>) The in-built parse allows to recognize prefixed and pluralized units even though they are not in the definition list:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">distance</span> <span class="o">=</span> <span class="mi">42</span> <span class="o">*</span> <span class="n">ureg</span><span class="o">.</span><span class="n">kilometers</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="n">distance</span><span class="p">)</span>
<span class="go">42 kilometer</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="n">distance</span><span class="o">.</span><span class="n">to</span><span class="p">(</span><span class="n">ureg</span><span class="o">.</span><span class="n">meter</span><span class="p">))</span>
<span class="go">42000.0 meter</span>
</pre></div>
</div>
<p>If you try to use a unit which is not in the registry:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">speed</span> <span class="o">=</span> <span class="mi">23</span> <span class="o">*</span> <span class="n">ureg</span><span class="o">.</span><span class="n">snail_speed</span>
<span class="gt">Traceback (most recent call last):</span>
<span class="c">...</span>
<span class="gr">pint.pint.UndefinedUnitError</span>: <span class="n">&#39;snail_speed&#39; is not defined in the unit registry</span>
</pre></div>
</div>
<p>You can add your own units to the registry or build your own list. More info on that <a class="reference internal" href="defining.html#defining"><span>Defining units</span></a></p>
</div>
<div class="section" id="string-parsing">
<h2>String parsing<a class="headerlink" href="#string-parsing" title="Permalink to this headline"></a></h2>
<p>Pint can also handle units and units provided as strings:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="mf">2.54</span> <span class="o">*</span> <span class="n">ureg</span><span class="o">.</span><span class="n">parse_expression</span><span class="p">(</span><span class="s1">&#39;centimeter&#39;</span><span class="p">)</span>
<span class="go">&lt;Quantity(2.54, &#39;centimeter&#39;)&gt;</span>
</pre></div>
</div>
<p>or using the registry as a callable for a short form:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="mf">2.54</span> <span class="o">*</span> <span class="n">ureg</span><span class="p">(</span><span class="s1">&#39;centimeter&#39;</span><span class="p">)</span>
<span class="go">&lt;Quantity(2.54, &#39;centimeter&#39;)&gt;</span>
</pre></div>
</div>
<p>or using the <cite>Quantity</cite> constructor:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">Q_</span><span class="p">(</span><span class="mf">2.54</span><span class="p">,</span> <span class="s1">&#39;centimeter&#39;</span><span class="p">)</span>
<span class="go">&lt;Quantity(2.54, &#39;centimeter&#39;)&gt;</span>
</pre></div>
</div>
<p>Numbers are also parsed, so you can use an expression:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">ureg</span><span class="p">(</span><span class="s1">&#39;2.54 * centimeter&#39;</span><span class="p">)</span>
<span class="go">&lt;Quantity(2.54, &#39;centimeter&#39;)&gt;</span>
</pre></div>
</div>
<p>or:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">Q_</span><span class="p">(</span><span class="s1">&#39;2.54 * centimeter&#39;</span><span class="p">)</span>
<span class="go">&lt;Quantity(2.54, &#39;centimeter&#39;)&gt;</span>
</pre></div>
</div>
<p>This enables you to build a simple unit converter in 3 lines:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">user_input</span> <span class="o">=</span> <span class="s1">&#39;2.54 * centimeter to inch&#39;</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">src</span><span class="p">,</span> <span class="n">dst</span> <span class="o">=</span> <span class="n">user_input</span><span class="o">.</span><span class="n">split</span><span class="p">(</span><span class="s1">&#39; to &#39;</span><span class="p">)</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">Q_</span><span class="p">(</span><span class="n">src</span><span class="p">)</span><span class="o">.</span><span class="n">to</span><span class="p">(</span><span class="n">dst</span><span class="p">)</span>
<span class="go">&lt;Quantity(1.0, &#39;inch&#39;)&gt;</span>
</pre></div>
</div>
<div class="admonition warning">
<p class="first admonition-title">Warning</p>
<p class="last">Pint currently uses <a class="reference external" href="http://docs.python.org/3/library/functions.html#eval">eval</a> under the hood.
Do not use this approach from untrusted sources as it is <a class="reference external" href="http://nedbatchelder.com/blog/201206/eval_really_is_dangerous.html">dangerous</a>.</p>
</div>
</div>
<div class="section" id="string-formatting">
<h2>String formatting<a class="headerlink" href="#string-formatting" title="Permalink to this headline"></a></h2>
<p>Pint&#8217;s physical quantities can be easily printed:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">accel</span> <span class="o">=</span> <span class="mf">1.3</span> <span class="o">*</span> <span class="n">ureg</span><span class="p">[</span><span class="s1">&#39;meter/second**2&#39;</span><span class="p">]</span>
<span class="gp">&gt;&gt;&gt; </span><span class="c1"># The standard string formatting code</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="s1">&#39;The str is {!s}&#39;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">accel</span><span class="p">))</span>
<span class="go">The str is 1.3 meter / second ** 2</span>
<span class="gp">&gt;&gt;&gt; </span><span class="c1"># The standard representation formatting code</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="s1">&#39;The repr is {!r}&#39;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">accel</span><span class="p">))</span>
<span class="go">The repr is &lt;Quantity(1.3, &#39;meter / second ** 2&#39;)&gt;</span>
<span class="gp">&gt;&gt;&gt; </span><span class="c1"># Accessing useful attributes</span>
<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span><span class="p">(</span><span class="s1">&#39;The magnitude is {0.magnitude} with units {0.units}&#39;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">accel</span><span class="p">))</span>
<span class="go">The magnitude is 1.3 with units meter / second ** 2</span>
</pre></div>
</div>
<p>But Pint also extends the standard formatting capabilities for unicode and latex representations:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">accel</span> <span class="o">=</span> <span class="mf">1.3</span> <span class="o">*</span> <span class="n">ureg</span><span class="p">[</span><span class="s1">&#39;meter/second**2&#39;</span><span class="p">]</span>
<span class="gp">&gt;&gt;&gt; </span><span class="c1"># Pretty print</span>
<span class="gp">&gt;&gt;&gt; </span><span class="s1">&#39;The pretty representation is {:P}&#39;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">accel</span><span class="p">)</span>
<span class="go">&#39;The pretty representation is 1.3 meter/second²&#39;</span>
<span class="gp">&gt;&gt;&gt; </span><span class="c1"># Latex print</span>
<span class="gp">&gt;&gt;&gt; </span><span class="s1">&#39;The latex representation is {:L}&#39;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">accel</span><span class="p">)</span>
<span class="go">&#39;The latex representation is 1.3 \\frac{meter}{second^{2}}&#39;</span>
<span class="gp">&gt;&gt;&gt; </span><span class="c1"># HTML print</span>
<span class="gp">&gt;&gt;&gt; </span><span class="s1">&#39;The HTML representation is {:H}&#39;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">accel</span><span class="p">)</span>
<span class="go">&#39;The HTML representation is 1.3 meter/second&lt;sup&gt;2&lt;/sup&gt;&#39;</span>
</pre></div>
</div>
<p>If you want to use abbreviated unit names, suffix the specification with <cite>~</cite>:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="s1">&#39;The str is {:~}&#39;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">accel</span><span class="p">)</span>
<span class="go">&#39;The str is 1.3 m / s ** 2&#39;</span>
</pre></div>
</div>
<p>The same is true for latex (<cite>L</cite>), pretty (<cite>P</cite>) and HTML (<cite>H</cite>) specs.</p>
<p>Finally, you can specify a default format specification:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="s1">&#39;The acceleration is {}&#39;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">accel</span><span class="p">)</span>
<span class="go">&#39;The acceleration is 1.3 meter / second ** 2&#39;</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">ureg</span><span class="o">.</span><span class="n">default_format</span> <span class="o">=</span> <span class="s1">&#39;P&#39;</span>
<span class="gp">&gt;&gt;&gt; </span><span class="s1">&#39;The acceleration is {}&#39;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">accel</span><span class="p">)</span>
<span class="go">&#39;The acceleration is 1.3 meter/second²&#39;</span>
</pre></div>
</div>
</div>
<div class="section" id="using-pint-in-your-projects">
<h2>Using Pint in your projects<a class="headerlink" href="#using-pint-in-your-projects" title="Permalink to this headline"></a></h2>
<p>If you use Pint in multiple modules within you Python package, you normally want to avoid creating multiple instances of the unit registry.
The best way to do this is by instantiating the registry in a single place. For example, you can add the following code to your package <cite>__init__.py</cite>:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="kn">from</span> <span class="nn">pint</span> <span class="kn">import</span> <span class="n">UnitRegistry</span>
<span class="n">ureg</span> <span class="o">=</span> <span class="n">UnitRegistry</span><span class="p">()</span>
<span class="n">Q_</span> <span class="o">=</span> <span class="n">ureg</span><span class="o">.</span><span class="n">Quantity</span>
</pre></div>
</div>
<p>Then in <cite>yourmodule.py</cite> the code would be:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">ureg</span><span class="p">,</span> <span class="n">Q_</span>

<span class="n">length</span> <span class="o">=</span> <span class="mi">10</span> <span class="o">*</span> <span class="n">ureg</span><span class="o">.</span><span class="n">meter</span>
<span class="n">my_speed</span> <span class="o">=</span> <span class="n">Quantity</span><span class="p">(</span><span class="mi">20</span><span class="p">,</span> <span class="s1">&#39;m/s&#39;</span><span class="p">)</span>
</pre></div>
</div>
<div class="admonition warning">
<p class="first admonition-title">Warning</p>
<p>There are no global units in Pint. All units belong to a registry and you can have multiple registries instantiated at the same time. However, you are not supposed to operate between quantities that belong to different registries. Never do things like this:</p>
<div class="last highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">q1</span> <span class="o">=</span> <span class="n">UnitRegistry</span><span class="p">()</span><span class="o">.</span><span class="n">meter</span>
<span class="gp">&gt;&gt;&gt; </span><span class="n">q2</span> <span class="o">=</span> <span class="n">UnitRegistry</span><span class="p">()</span><span class="o">.</span><span class="n">meter</span>
<span class="gp">&gt;&gt;&gt; </span><span class="c1"># q1 and q2 belong to different registries!</span>
<span class="gp">&gt;&gt;&gt; </span><span class="nb">id</span><span class="p">(</span><span class="n">q1</span><span class="o">.</span><span class="n">_REGISTRY</span><span class="p">)</span> <span class="ow">is</span> <span class="nb">id</span><span class="p">(</span><span class="n">q2</span><span class="o">.</span><span class="n">_REGISTRY</span><span class="p">)</span> <span class="c1"># False</span>
</pre></div>
</div>
</div>
</div>
</div>


          </div>
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
        <div class="sphinxsidebarwrapper"><p><a href="index.html">
  <img src="_images/logo-full.jpg" alt="Logo" style="width:80%;height:80%"/>
</a></p>

<h3>About Pint</h3>
Units in Python.
You are currently looking at the documentation of version 0.6.
<h3>Other Formats</h3>
<p>
  You can download the documentation in other formats as well:
</p>
<ul>
  <li><a href="https://media.readthedocs.org/pdf/pint/latest/pint.pdf">as PDF</a>
  <li><a href="https://media.readthedocs.org/htmlzip/pint/latest/pint.zip">as zipped HTML</a>
  <li><a href="https://media.readthedocs.org/epub/pint/latest/pint.epub">as ePub</a>
</ul>
<h3>Useful Links</h3>
<ul>
  <li><a href="https://pypi.python.org/pypi/Pint/">Pint @ PyPI</a></li>
  <li><a href="https://github.com/hgrecco/pint">Code in GitHub</a></li>
  <li><a href="https://github.com/hgrecco/pint/issues">Issue Tracker</a></li>
</ul>
  <h3><a href="index.html">Table Of Contents</a></h3>
  <ul>
<li><a class="reference internal" href="#">Tutorial</a><ul>
<li><a class="reference internal" href="#converting-quantities">Converting Quantities</a></li>
<li><a class="reference internal" href="#string-parsing">String parsing</a></li>
<li><a class="reference internal" href="#string-formatting">String formatting</a></li>
<li><a class="reference internal" href="#using-pint-in-your-projects">Using Pint in your projects</a></li>
</ul>
</li>
</ul>

<h3>Related Topics</h3>
<ul>
<li><a href="index.html">Documentation overview</a></li>
  <p>
  <b>Previous</b><br/>
  <a href="getting.html" title="previous chapter">Installation</a>
  </p>
  <p>
  <b>Next</b><br/>
  <a href="numpy.html" title="next chapter">NumPy support</a>
  </p>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="_sources/tutorial.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
<div id="searchbox" style="display: none" role="search">
  <h3>Quick search</h3>
    <form class="search" action="search.html" method="get">
      <input type="text" name="q" />
      <input type="submit" value="Go" />
      <input type="hidden" name="check_keywords" value="yes" />
      <input type="hidden" name="area" value="default" />
    </form>
    <p class="searchtip" style="font-size: 90%">
    Enter search terms or a module, class or function name.
    </p>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
        </div>
      </div>
      <div class="clearer"></div>
    </div>
  
    <a href="http://github.com/hgrecco/pint"><img style="position: fixed; top: 0; right: 0; border: 0;"
    src="" alt="Fork me on GitHub" /></a>
  

  <div class="footer">
    &copy; Copyright 2016, Hernan E. Grecco. Pint 0.6.
    Created using <a href="http://sphinx.pocoo.org/">Sphinx</a>.
  </div>
  
  </body>
</html>