プログラミング、フリーダイビング、ブロックチェーンのブログ

プログラミング道場

▼ 私がオススメするプログラミング教材です

私がおすすめするプログラミング教材のまとめ【書籍】

目次1 これからエンジニアになりたい人へ向けた本2 プログラミング言語3 アプリ開発4 サーバー、インフラ、セキュリティなど5 機械学習系6 ゲーム開発7 データベース8 デザイン9 組織作り10 自作シリーズ11 その他12 おまけ これ ...

続きを見る

【Python入門】四捨五入しよう

更新日:

記事の内容


この記事では、Pythonで四捨五入を扱う方法を紹介します。
なお、このコードはPythonの3系で書かれています。

round関数の使い方

round関数は、以下のように使います。

round(数値)
round(数値, 桁数)

第一引数のみを指定した場合は整数に、四捨五入されます。
第二引数には、小数点何桁まで丸めるかを指定します。

10.5の四捨五入は上手くいっていません。。。
その理由は次に説明します。

round関数を使うさいの注意

四捨五入ではなく偶数への丸め

round関数の丸めは、一般的な四捨五入ではなく、偶数への丸めになります。
端数が0.5より小さいならば切り捨てます。
端数が0.5より大きいならば切り上げます。
端数がちょうど0.5なら、切り捨てと切り上げのうち結果が偶数となる方へ丸めます。

これをコードで見ていきましょう。
結果が全て、「0」「2」 「4」「6」といった偶数になっていることがわかります。




小数点以下2桁以降の処理では、偶数への丸めも上手くいかない

小数点以下2桁以降の処理では、偶数への丸めも上手くいかない時もあります。
理由は、小数を浮動小数点数で正確に表せないからです。

Decimalを使うと問題が解決します

上記の2つの問題は、Decimalを使うと解決します。

Decimal型のオブジェクトからquantize()を呼び出します。
quantize()の第一引数に、求めたい桁数と同じ桁数の数値を入力します。
そして、引数roundingに丸めモードを指定します。
ROUND_HALF_UPを指定すると一般的な四捨五入になります。

 まとめ

この記事では、Pythonで四捨五入を扱う方法を紹介しました。
業務で正確に四捨五入をしたい場合は、Decimalを使うようにしましょう。

Good luck with your engineer life!

▼ 小数点の切り上げと切り捨てが気になる人は、この記事を読んで下さい。

【Python入門】小数点の切り上げと切り捨て

目次1 小数点の切り上げ2 小数点の切り捨て3 まとめ 小数点の切り上げ 小数点の切り捨て まとめ この記事では、Pythonにおける「小数点の切り上げ」と「切り捨て」について紹介しました。 Good luck for your engin ...

続きを見る

▼ Pythonをより詳しく勉強したい人には、この記事がオススメです

Pythonの学習でおすすめの本と動画【2024年最新】

目次1 関連記事の紹介2 動画教材3 初心者向け【入門編】4 中級者向け5 上級者向け 関連記事の紹介 自然言語処理については、この記事を読んで下さい MLOpsについては、この記事を読んで下さい 機械学習については、この記事を読んで下さい ...

続きを見る


▼ Djangoをより詳しく勉強したい人には、この記事がオススメです

Djangoの学習でおすすめの本と動画【2024年最新】

目次1 関連記事の紹介2 動画教材3 中級者向け 関連記事の紹介 Pythonについては、この記事を読んで下さい 自然言語処理については、この記事を読んで下さい MLOpsについては、この記事を読んで下さい 機械学習については、この記事を読 ...

続きを見る


▼ Flaskをより詳しく勉強したい人には、この記事がオススメです

Flaskフレームワークの学習でおすすめの本と動画【2024年最新】

目次1 関連記事の紹介2 動画教材3 中級者向け 関連記事の紹介 Pythonについては、この記事を読んで下さい 自然言語処理については、この記事を読んで下さい MLOpsについては、この記事を読んで下さい 機械学習については、この記事を読 ...

続きを見る


▼ 機械学習をより詳しく勉強したい人には、この記事がオススメです

機械学習でおすすめの本と動画【2023年最新】

目次1 関連記事の紹介2 動画教材3 概念的な理解4 初心者向け【入門編】5 中級者向け6 上級者向け 関連記事の紹介 自然言語処理については、この記事を読んで下さい MLOpsについては、この記事を読んで下さい 機械学習で使う数学について ...

続きを見る


▼ MLOpsをより詳しく勉強したい人には、この記事がオススメです

MLOpsでおすすめの本と動画【2024年最新】

目次1 関連記事の紹介2 動画教材3 中級者向け 関連記事の紹介 自然言語処理については、この記事を読んで下さい 機械学習については、この記事を読んで下さい Kaggleについては、この記事を読んで下さい 機械学習で使う数学については、この ...

続きを見る


▼ 統計学をより詳しく勉強したい人には、この記事がオススメです

統計学の学習でおすすめの本と動画【2023年最新】

目次1 動画教材2 初心者向け3 中級者向け4 上級者向け 動画教材 いちばん理解できる統計学ベーシック講座その1【確率分布・推定・検定】 ▼ 興味がある方は、画像をクリック 統計学の基礎を効率的に学べるベーシック講座です。 統計学の入り口 ...

続きを見る


▼ 数学をより詳しく勉強したい人には、この記事がオススメです

機械学習に備えて数学を学習するためのおすすめの本と動画【2023年最新】

目次1 関連記事の紹介2 動画教材3 中学生レベル4 高校レベル5 結城先生シリーズ6 線形代数7 微積分8 ラプラス変換9 その他 関連記事の紹介 自然言語処理については、この記事を読んで下さい 機械学習については、この記事を読んで下さい ...

続きを見る


▼ Rをより詳しく勉強したい人には、この記事がオススメです

Rの学習でおすすめの本と動画【2024年最新】

目次1 動画教材2 統計3 R言語自体の解説 動画教材 Rではじめる統計基礎講座 ▼ 興味がある方は、画像をクリック R言語を使って、「データ分析」や「データサイエンス」の基礎を覚えて、ビジネスで活きる「実践的な統計」を学びましょう。 医師 ...

続きを見る


▼ Juliaをより詳しく勉強したい人には、この記事がオススメです

Juliaの学習でおすすめの本と動画【2024年最新】

目次1 動画教材2 初心者向け3 中級者向け 動画教材 はじめましてJulia~次世代のデータサイエンス・科学計算のためのプログラミング ▼ 興味がある方は、画像をクリック このJuliaプログラミングコースは、初心者から中級者を対象として ...

続きを見る

-Python, プログラミング

Copyright© プログラミング道場 , 2026 All Rights Reserved Powered by AFFINGER4.