大きな数値にはDecimalモジュールを使用しますが、0.00001未満の値については科学的表記法になります。PyQt - QLabelの科学記法を無効にする方法
round(Decimal(str(value)), 9)
「{0:F}」形式(値)が動作しない、それはすべての数字を示しているので、例えば、全ての小数点以下が示されているように、これを無効にする方法はあります0.0000100000の代わりに0.00001
私が欲しいのは、0.0000000015を丸めた後に0.000000002を表示することです。
私は
def set_decimals(self, value, decimals):
val = '{0:f}'.format(Decimal(str(value)))
rnd_value = round(Decimal(val), decimals)
return str(rnd_value)
を試みたが、それはまだ
おかげ科学表記に変換します。
ダブルナンバーを四捨五入して必要な小数点以下の桁をすべて表示するのは簡単ですか? – linuxoid
@ user665327、私はあなたを理解しているとは思えませんが、必要な桁数を ''{:.14f}'。format(value)'に入れてください。次に、最後の行の小数点の後に末尾のゼロを取り除く必要はありません。 – warvariuc
これを行うと、出力はばかげて見えます:0.00006660000000。出力を切り捨てるために使用するスピナーコントロールがあります。したがって、小数点以下5桁以上のゼロがある場合、私はそれを科学的ではなく標準的な形で示したいと思います。 – linuxoid