suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Python – Das Problem, die Anzahl der Dezimalstellen in Zahlen beizubehalten

Ich führe eine Operation für jedes Element in [-0,32695389161796801, -0,31471406408825409, -0,31475407980700348] aus, indem ich zuerst 3 Ziffern nach dem Dezimalpunkt und dann 2 Ziffern nach dem Dezimalpunkt behalte, z. B. rund(rund(-0,326953 89161796801,3 ) ,2) Methode, ich bekomme [-0,33000000000000002, -0,32000000000000001, -0,32000000000000001], aber was ich bekommen möchte, ist [-0,33, -0,32, -0,32], danke

PHP中文网PHP中文网2743 Tage vor942

Antworte allen(1)Ich werde antworten

  • 天蓬老师

    天蓬老师2017-05-18 10:54:59

    在使用Python处理精度很重要的浮点数时,建议使用内置的Decimal库:

    from decimal import Decimal
    a = Decimal('1.0231212121')
    a = round(a,3) # Decimal('1.023')

    如果只是要求看起来“精确”,那么也可以用字符串的format方法

    '{:.2f}'.format(1.0231212121) # '1.02'

    Antwort
    0
  • StornierenAntwort