ホームページ >バックエンド開発 >Python チュートリアル >Pythonで小数点以下2桁を維持する方法

Pythonで小数点以下2桁を維持する方法

青灯夜游
青灯夜游オリジナル
2023-01-05 17:36:4118615ブラウズ

方法: 1. 文字列書式設定を使用します (構文 "print("%.2f" % a)"; 2. Round 組み込み関数を使用します (構文 "round(a, 2)")。 3. を使用します。 10 進数モジュール、構文 "Decimal(a).quantize(Decimal("0.00"))"; 4. シーケンス スライスを使用します、構文 "str(a).split('.')[0] '.' str(a) .split('.')[1][:2]"; 5. re モジュールを使用します。

Pythonで小数点以下2桁を維持する方法

このチュートリアルの動作環境: Windows7 システム、Python3 バージョン、DELL G3 コンピューター

Python を学習するときに多くの友人がこれに遭遇する可能性があります。フォーマットされたデータの出力。最も一般的なのは、小数点以下の桁数を保持することです。今回はPythonで小数点以下2桁を保持する方法を例に、Pythonでデータを整形する方法を紹介します。

文字列書式設定を使用する

ほとんどの言語では、文字列書式設定を使用して小数点以下 2 桁を保持する効果を実現できます。Python も例外ではありません。

a = 12.345
print("%.2f" % a) # %代表格式化输出,.2代表小数点后保留两位,f代表数据类型是浮点型

round 組み込み関数を使用する

#Python には、round という組み込み関数があり、データの書式設定に使用できます。

a = 12.345
a1 = round(a, 2) #将a通过round函数处理后赋值给a1,传入的2代表保留两位小数
print(a1)

10 進数モジュールを使用する

Java と同様に、Python にも正確な計算のための 10 進数モジュールが用意されており、データをフォーマットすることもできます。 。コードは次のとおりです。

from decimal import Decimal
a = 12.345
Decimal(a).quantize(Decimal("0.00")) # 使用默认的进位方式(同round)“0.00”表示保留小数点后两位
注: Python の丸めは特別な桁上げメソッドを使用します。これは四捨五入に似ていますが、正確には 5 に丸めると呼ぶべきです。興味のある友達は、数値の四捨五入と基本的な四捨五入について学ぶことができます。

上記は小数点以下 2 桁を保持する従来の方法ですが、次に、非従来的な方法を 2 つ紹介します (文字列処理方法を使用し、小数点以下 2 桁のみを保持し、四捨五入を行わない方法です)

シーケンス スライスの使用#原理は非常に簡単で、小数点を見つけてスライスするだけです。コードは次のとおりです。

a = 12.345
str(a).split('.')[0] + '.' + str(a).split('.')[1][:2] #使用序列切片的方式,切出小数点前的数据,还有小数点后两位的数据,然后进行拼装

re モジュール

の使用はスライスと似ていますが、今回は小数点位置を特定するために通常のマッチングが使用されます。

import re
a = 12.345
re.findall(r"\d{1,}?\.\d{2}", str(a)) #使用正则匹配,将符合规则(一个小数点前有很多位数字,小数点后面只有两位数字的片段)字符串片段取出

【関連する推奨事項:

Python3 ビデオ チュートリアル

]

以上がPythonで小数点以下2桁を維持する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。