場合によっては算術に使用する必要があり、他の場合には文字列として使用する必要がある 10 進数の値に問題があります。具体的には、レートのリストがあります。例:
rates=[0.1,0.000001,0.0000001]
そして、これらを使用して画像の圧縮率を指定しています。これらの値を特定の順序でソートできるようにする必要があるため、最初はこれらの値を数値として持つ必要があります。また、これらの各値を文字列に変換できるようにして、1) レートをファイル名に埋め込み、2) レートとその他の詳細を CSV ファイルに記録できるようにしたいと考えています。最初の問題は、小数点以下 6 桁を超える浮動小数点数は、文字列に変換すると科学的形式になることです。
>>> str(0.0000001)
'1e-07'
だから私はPythonのDecimalモジュールを使ってみましたが、いくつかの浮動小数点数を科学表記法に変換しています(私が読んだドキュメントとは一見反対です)。元:
>>> Decimal('1.0000001')
Decimal('1.0000001')
# So far so good, it doesn't convert to scientific notation with 7 decimal places
>>> Decimal('0.0000001')
Decimal('1E-7')
# Scientific notation, back where I started.
複数の投稿で提案されているように、文字列の書式設定も調べましたが、うまくいきませんでした。この Python 初心者は、あらゆる提案や指針を高く評価しています。