6

次のような浮動小数点数がありますx=23392342.1

工学表記(メトリックプレフィックス付き)の文字列に変換したい

http://en.wikipedia.org/wiki/Engineering_notation http://en.wikipedia.org/wiki/Metric_prefix

したがって、私の例では 23392342.1 = 23.3923421E6 = 23.3923421 M (メガ)

表示したい23.3923421 M

4

5 に答える 5

8

QuantiPhyパッケージを使用します。これは、十分に文書化され、十分にサポートされている安定したパッケージであり、必要なことだけを行うように設計されています。

>>> from quantiphy import Quantity

>>> v = Quantity(23.3923421E6)                                               
>>> str(v)                                                                   
'23.392M'                                                                    

>>> v.render(prec='full')                                                    
'23.3923421M'

一般に、単位には SI 単位の接頭辞が使用され、Quantity は単位と数値を組み合わせるように設計されています。

>>> v = Quantity(23.3923421E6, 'V')
>>> print(v)
23.392 MV

>>> f = Quantity('23.3923421 MHz')
>>> print('{}'.format(f))
23.392 MHz

Quantity サブクラスは float であるため、float と同じように式で数量を使用できます。

>>> t = 1/f                                                                  
>>> print(t)                                                                 
4.274903281275114e-08

>>> t = Quantity(t, 's')                                                     
>>> print(t)
42.749 ns
于 2017-07-15T21:42:37.120 に答える