Pythonで小数点を自在に操作!math.floor()とmath.ceil()で切り捨て・切り上げ
![]() |
20万件以上の案件から、副業に最適なリモート・週3〜の案件を一括検索できるプラットフォーム。プロフィール登録でAIスカウトが自動的にマッチング案件を提案。市場統計や単価相場、エージェントの口コミも無料で閲覧可能なため、本業を続けながら効率的に高単価の副業案件を探せます。フリーランスボード |
| |
週2〜3日から働ける柔軟な案件が業界トップクラスの豊富さを誇るフリーランスエージェント。エンド直契約のため高単価で、週3日稼働でも十分な報酬を得られます。リモートや時間フレキシブルな案件も多数。スタートアップ・ベンチャー中心で、トレンド技術を使った魅力的な案件が揃っています。専属エージェントが案件紹介から契約交渉までサポート。利用企業2,000社以上の実績。ITプロパートナーズ |
| |
10,000件以上の案件を保有し、週3日〜・フルリモートなど柔軟な働き方に対応。高単価案件が豊富で、報酬保障制度(60%)や保険料負担(50%)など正社員並みの手厚い福利厚生が特徴。通勤交通費(月3万円)、スキルアップ費用(月1万円)の支給に加え、リロクラブ・freeeが無料利用可能。非公開案件80%以上、支払いサイト20日で安心して稼働できます。Midworks |
Pythonで数値を扱う際、小数点以下を切り捨てたり、切り上げたりする操作は非常によく行われます。組み込み関数だけでは難しいこれらの処理も、mathモジュールの**math.floor()とmath.ceil()**を使えば簡単に実現できます。この記事では、これらの関数の使い方と、具体的なコード例を交えて詳しく解説します。
目次
✂️ 小数点以下を切り捨てる:math.floor()
math.floor()関数は、与えられた数値以下の最大の整数を返します。つまり、小数点以下を切り捨てる効果があります。
math.floor()の基本的な使い方
math.floor()は、正の数に対しても負の数に対しても、常に「与えられた数以下で最も大きい整数」を返します。
import math
# math.floor()の基本的な使い方
print(math.floor(3.14)) # 3
print(math.floor(3.99)) # 3
print(math.floor(-2.1)) # -3 (例: -2.1以下の最大の整数は-3)
正の数の場合は一般的な切り捨てと同じ動作になりますが、負の数の場合は注意が必要です。例えば、-2.1のmath.floor()は-3になります。これは、数直線上で-2.1の左側にある最も近い整数が-3だからです。
⬆️ 小数点以下を切り上げる:math.ceil()
一方、math.ceil()関数は、与えられた数値以上の最小の整数を返します。これは小数点以下を切り上げる操作に相当します。
math.ceil()の基本的な使い方
math.ceil()は、正の数に対しても負の数に対しても、常に「与えられた数以上で最も小さい整数」を返します。
import math
# math.ceil()の基本的な使い方
print(math.ceil(3.14)) # 4
print(math.ceil(3.01)) # 4
print(math.ceil(-2.9)) # -2 (例: -2.9以上の最小の整数は-2)
こちらも負の数の場合に注意が必要です。-2.9のmath.ceil()は-2になります。これは、数直線上で-2.9の右側にある最も近い整数が-2だからです。
int()関数との違い
Pythonの組み込み関数である**int()も小数点を扱えますが、これは常に小数点以下を切り捨てるわけではありません**。int()は、数値を整数型に変換する際にゼロ方向へ丸めます。
int()とmath.floor()の違い
正の数の場合はint()とmath.floor()は同じ結果になりますが、負の数の場合は結果が異なります。
import math
# int()とmath.floor()の違い
print(int(3.8)) # 3
print(math.floor(3.8)) # 3
print(int(-3.8)) # -3 (ゼロ方向へ丸める)
print(math.floor(-3.8)) # -4 (数直線上で-3.8以下の最大の整数)
この違いを理解しておくことは、意図しない結果を避けるために重要です。
まとめ
Pythonで小数点以下を切り捨てたい場合は**math.floor()を、切り上げたい場合はmath.ceil()**を使用しましょう。特に負の数を扱う際には、int()関数との違いを意識することが大切です。これらの関数を使いこなすことで、数値処理の柔軟性が大きく向上します。
■「らくらくPython塾」が切り開く「呪文コーディング」とは?
■プロンプトだけでオリジナルアプリを開発・公開してみた!!
■AI時代の第一歩!「AI駆動開発コース」はじめました!
テックジム東京本校で先行開始。
■テックジム東京本校
「武田塾」のプログラミング版といえば「テックジム」。
講義動画なし、教科書なし。「進捗管理とコーチング」で効率学習。
より早く、より安く、しかも対面型のプログラミングスクールです。
<短期講習>5日で5万円の「Pythonミニキャンプ」開催中。
<月1開催>放送作家による映像ディレクター養成講座
<オンライン無料>ゼロから始めるPython爆速講座
![]() |
20万件以上の案件から、副業に最適なリモート・週3〜の案件を一括検索できるプラットフォーム。プロフィール登録でAIスカウトが自動的にマッチング案件を提案。市場統計や単価相場、エージェントの口コミも無料で閲覧可能なため、本業を続けながら効率的に高単価の副業案件を探せます。フリーランスボード |
| |
週2〜3日から働ける柔軟な案件が業界トップクラスの豊富さを誇るフリーランスエージェント。エンド直契約のため高単価で、週3日稼働でも十分な報酬を得られます。リモートや時間フレキシブルな案件も多数。スタートアップ・ベンチャー中心で、トレンド技術を使った魅力的な案件が揃っています。専属エージェントが案件紹介から契約交渉までサポート。利用企業2,000社以上の実績。ITプロパートナーズ |
| |
10,000件以上の案件を保有し、週3日〜・フルリモートなど柔軟な働き方に対応。高単価案件が豊富で、報酬保障制度(60%)や保険料負担(50%)など正社員並みの手厚い福利厚生が特徴。通勤交通費(月3万円)、スキルアップ費用(月1万円)の支給に加え、リロクラブ・freeeが無料利用可能。非公開案件80%以上、支払いサイト20日で安心して稼働できます。Midworks |


