Pythonでデータ処理を行う際、文字列(String)と数値(Integer/Float)の相互変換は基本かつ不可欠な知識になります。
CSVファイルの読み込みやAPI連携、フォーム入力値の処理など、実務の現場で日常的に求められる操作です。
今回は、基本的な変換方法から実務で役立つエラーハンドリングまで、 分かりやすく解説していきます!
文字列を数値に変換する
外部ファイルやAPIから取得したデータは、一見すると数値に見えても「文字列」として認識されているケースが珍しくありません。
四則演算や集計処理を行うためには、適切な数値型へと変換する必要があります。
整数への変換:int()
文字列を整数に変換するには int() 関数を使用します。
num_str = "100"
result = int(num_str) + 50
print(result)
# 出力: 150
小数への変換:float()
小数を扱う文字列を変換したい場合は、float()関数を使用します。
pi_str = "3.14"
result = float(pi_str) * 2
print(result)
# 出力: 6.28
数値を文字列に変換する
画面への出力やログファイルへの書き出し、テキストの結合を行う際は、数値を文字列型へ変換します。
基本的な変換:str()
もっとも手軽で標準的な手法は、str()関数を使用する方法です。
age = 30
message = "私は" + str(age) + "歳です。"
print(message)
# 出力: 私は30歳です。
実践的な変換:f-strings(フォーマット文字列)
現在のPython開発では、バージョン3.6以降で導入された「f-strings」の利用が主流となっています。型変換を細かく意識することなく直感的に数値を埋め込めるだけでなく、実行速度や可読性の面でも非常に優れています。
age = 30
height = 170.5
# fの後にクォートを書き、波括弧 {} の中に変数を入れます
message = f"年齢は{age}歳で、身長は{height}cmです。"
print(message)
# 出力: 年齢は30歳で、身長は170.5cmです。
よくあるエラーと安全な変換処理
実務データの中には、全角数字やカンマ、空文字など「そのままでは数値に変換できない文字列」が含まれていることがよくあります。
これらを無加工のまま変換しようとすると例外エラーが発生し、プログラム全体の実行が停止してしまいます。
エラーハンドリング(try-except)
予期せぬエラーで処理を止めないためにも、try-except構文を取り入れた安全な設計を意識しておくのが安心です。事前にカンマなどの不要な記号を除去する前処理もあわせて記述します。
data = "1,000"
try:
# 不要なカンマを除去してから変換を実行
clean_data = data.replace(",", "")
number = int(clean_data)
print(f"変換成功: {number}")
except ValueError:
print("数値に変換できないデータが含まれています。")
まとめ:型変換クイックリファレンス
| 変換の方向 | 使用する関数・記法 | 使用例 |
| 文字列 → 整数 | int() | int(“10”) |
| 文字列 → 小数 | float() | float(“0.5”) |
| 数値 → 文字列 | str() | str(100) |
| 数値 → 文字列(推奨) | f-string | f”値は{val}” |
基本的な型変換をマスターすることで、データの集計や加工がスムーズに行えるようになります。
特にf-stringsはVBAや他の言語にはないPythonコードをすっきりと整理できる便利な機能なので、積極的に活用してみてください!
Pythonの本は種類が多すぎて、業務効率化に使えるのか見分けるのが大変ですよね。実務自動化に5年以上携わってきた私が、「デスクワークの自動化に即戦力になった本」を厳選して紹介します。失敗しない1冊を見つけたい方は、ぜひ参考にしてみてください。


コメント