次のような浮動小数点数があります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
次のような浮動小数点数があります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
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