Heim > Artikel > Backend-Entwicklung > So behalten Sie zwei Dezimalstellen in Python bei
Methode: 1. Verwenden Sie die Zeichenfolgenformatierung, Syntax „print(“%.2f“ % a)“; 2. Verwenden Sie die integrierte Round-Funktion, Syntax „round(a, 2)“; "Decimal(a).quantize(Decimal("0.00"))" 4. Verwenden Sie Sequenz-Slicing, die Syntax lautet "str(a).split('.')[0]+'.'+str(a) .split ('.')[1][:2]"; 5. Verwenden Sie das re-Modul.
Die Betriebsumgebung dieses Tutorials: Windows7-System, Python3-Version, DELL G3-Computer
Viele Freunde müssen beim Erlernen von Python möglicherweise Daten formatieren und ausgeben. Die häufigsten Anforderungen sind: Behalten Sie mehrere Dezimalstellen bei. Heute wird in diesem Artikel die Methode zur Beibehaltung von zwei Dezimalstellen in Python als Beispiel verwendet, um die Methode der Datenformatierung in Python vorzustellen.
Die meisten Sprachen können die Zeichenfolgenformatierung verwenden, um den Effekt der Beibehaltung von zwei Dezimalstellen zu erzielen, und Python ist keine Ausnahme:
a = 12.345
print("%.2f" % a) # %代表格式化输出,.2代表小数点后保留两位,f代表数据类型是浮点型
Python-integrierte Es wird eine Funktion namens „round“ erstellt, mit der Daten formatiert werden können. Der Code lautet wie folgt:
a = 12.345
a1 = round(a, 2) #将a通过round函数处理后赋值给a1,传入的2代表保留两位小数
print(a1)
Ähnlich wie Java bietet Python auch ein Dezimalmodul für präzise Operationen und kann auch Daten für die Ausgabe formatieren. Der Code lautet wie folgt:
from decimal import Decimal
a = 12.345
Decimal(a).quantize(Decimal("0.00")) # 使用默认的进位方式(同round)“0.00”表示保留小数点后两位
Hinweis: Pythons Runde verwendet eine spezielle Übertragsmethode, die der Rundung etwas ähnelt, aber um genau zu sein, sollte sie Rundung auf fünf heißen. Interessierte Freunde können etwas über numerisches Runden und grundlegendes Runden lernen.
Das Obige ist die herkömmliche Methode zum Beibehalten von zwei Dezimalstellen. Als Nächstes stellen wir zwei unkonventionelle Methoden vor (bei Verwendung der Zeichenfolgenverarbeitung behält diese Methode nur zwei Dezimalstellen bei und rundet nicht).
a = 12.345
str(a).split('.')[0] + '.' + str(a).split('.')[1][:2] #使用序列切片的方式,切出小数点前的数据,还有小数点后两位的数据,然后进行拼装
Die Verwendung des re-Moduls
import re
a = 12.345
re.findall(r"\d{1,}?\.\d{2}", str(a)) #使用正则匹配,将符合规则(一个小数点前有很多位数字,小数点后面只有两位数字的片段)字符串片段取出
Python3-Video-Tutorial
】Das obige ist der detaillierte Inhalt vonSo behalten Sie zwei Dezimalstellen in Python bei. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!