2016-09-18 14 views
6

私はいくつかの計算の後に得ている小数の数を減らそうとしています。私の問題が発生print()は次のようになります。Python numpy科学的表記限界小数

print("Mean resistivity: {res} Ohm m".format(res=np.mean(resistivity))) 

そしてそれは、この出力:

Mean resistivity: 1.6628449915450776e-08 Ohm m 

今、私は私がそれをやってみました3に印刷されている小数点以下の桁数を減らしたいが

print("Mean resistivity: {res:.3f} Ohm m".format(res=np.mean(resistivity))) 

しかし、このコードを印刷:

このような書式設定文字列、

私が実際にしたいことはこれです:

Mean resistivity: 1.663e-8 Ohm m 

にはどうすればいいだけの科学的表記法としてだけ小数点第3位で表示されるようにresをフォーマットすることができますか?

+0

は、フォーマット印刷[指定](https://docs.python.org/2/library/string.htmlを使用します#formatspec) – dawg

答えて

6

これはpython3ですか?もしそうなら、これは動作するはずです:{res:.3E}

@edit それはpython2でも動作するはずです - spec

+0

Python 3でも確認済み – Jeon

+0

はい、ありがとうございます!それは動作します:)小文字の 'e'でも動作します。そのドキュメントのブックマーク – Dartmouth

+1

@Dartmouthをブックマークすると、Python 3.xに移行したときに、2.xのドキュメントに見られるように少し改良されていることに注意してください。また、Python 3.6(まもなく到着予定)には、同じミニ書式言語を共有するさらに単純な実装があります。将来ブックマークするには... https://docs.python.org/3.6/reference/lexical_analysis.html#f-strings – NaN

関連する問題