Pythonで文字列を数値に変換する方法とエラー対策

python
記事内に広告が含まれています。

Pythonを使ってデータを扱う際、文字列を数値変換することは非常に重要です。

特に、データ処理や計算の前に文字列データをintfloatに変換する必要があります。

この記事では、Pythonで文字列を数値に変換する方法と、エラーが発生した場合の対処方法を紹介します。

基本的な型変換から、エラー処理まで幅広くカバーしていますので、ぜひご活用ください。

DMM WEBCAMP
  • 未経験者向けプログラミングスクール
  • 現役エンジニアがしっかりサポート
  • 卒業後も安心の転職・副業サポート

Pythonで文字列を数値に変換する基本的な方法

Pythonでは、int()関数とfloat()関数を使って、文字列をそれぞれ整数浮動小数点数に変換することができます。

これらの関数を使えば、簡単にデータを変換し、数値として処理することが可能です。

int()関数を使って整数に変換する

文字列を整数に変換するには、int()関数を使用します。

次の例では、int()関数を使って文字列を整数に変換しています。

num_str = "123"
num = int(num_str)
print(num)  # 123

float()関数を使って浮動小数点数に変換する

小数を含む文字列を数値に変換するには、float()関数を使います。

次のコード例では、文字列を浮動小数点数に変換しています。

num_str = "123.45"
num = float(num_str)
print(num)  # 123.45

エラーハンドリングの基本

文字列に数値以外の文字が含まれていると、ValueErrorが発生します。

このエラーを回避するためには、try-except構文を使ってエラーハンドリングを行います。

num_str = "abc"
try:
    num = int(num_str)
except ValueError:
    print("変換に失敗しました")
CodeCamp
  • 現役エンジニアからスキルを学べる
  • 満足度は驚異の97.4%
  • 300社以上のIT企業で研修に導入
  • 毎日9時〜21時まで、無料カウンセリングを開催中!

文字列から数値への変換におけるエラーハンドリングと例外処理

Pythonで文字列を数値に変換する際、エラーが発生することがあります。

特に、入力が不正な場合や数値に変換できない文字列を扱うと、ValueErrorTypeErrorが発生します。

ここでは、エラーハンドリングの方法と、例外処理の書き方について解説します。

ValueErrorの対処法

Pythonで数値変換時に最も多く発生するのがValueErrorです。

例えば、数値に変換できない文字列をint()float()で処理しようとすると、ValueErrorが発生します。

このエラーは、try-exceptを使って処理することが可能です。

TypeErrorの対処法

型が一致しない場合、TypeErrorが発生します。

例えば、リストや辞書をint()で変換しようとすると、このエラーが発生します。

num_list = [1, 2, 3]
try:
    num = int(num_list)
except TypeError:
    print("TypeErrorが発生しました")

エラー回避のためのバリデーション

数値変換を行う前に、文字列が正しい形式であるかどうかをチェックすることで、エラーを未然に防ぐことができます。

num_str = "123abc"
if num_str.isdigit():
    num = int(num_str)
else:
    print("有効な数字ではありません")

【リモートワークには必須】
キャリアに合わせてお得に光回線を利用しよう
ドコモ光
開通後、最短一ヶ月で35,000円のキャッシュバック!
 
auひかり
難しい条件一切なしで、最大12,7000円のキャッシュバック!
 
ソフトバンク光
高額キャッシュバックや豪華特典をお届け!

Pythonで進数変換を行う方法:基数指定とエラー対策

Pythonでは、文字列を進数変換することも可能です。

特に、16進数や8進数、2進数のデータを扱う際に便利な機能です。

ここでは、Pythonで基数を指定して進数変換を行う方法について解説します。

基数を指定して整数に変換する

Pythonでは、int()関数の第二引数に基数を指定することで、進数変換が可能です。

次の例では、16進数の文字列を10進数に変換しています。

hex_str = "1a"
num = int(hex_str, 16)
print(num)  # 26

基数を指定した数値変換の注意点

基数指定の際、入力が正しい形式でない場合はValueErrorが発生します。

そのため、常に入力値を検証し、適切にエラーハンドリングを行うことが重要です。

進数変換でのエラーハンドリング

進数変換時にもtry-except構文を使用して、エラーを適切に処理しましょう。

hex_str = "1g"
try:
    num = int(hex_str, 16)
except ValueError:
    print("進数変換に失敗しました")

プログラミングスクール受講時には教育訓練給付制度を利用することで、受講料の最大80%の給付を受けることが可能です。

文字列と数値を使った計算と型変換の実践例

文字列を数値に変換するだけでなく、計算に利用することもPythonでは可能です。

ここでは、文字列と数値を組み合わせた型変換の例を紹介します。

また、文字列から数値への変換後、数値として計算する方法も説明します。

文字列を使った基本的な計算

文字列から変換した数値を使って、四則演算を行う例を示します。

num_str = "10"
num = int(num_str)
result = num + 20
print(result)  # 30

文字列から数値に変換した後の計算応用

文字列を数値に変換してから、より複雑な計算も行うことができます。

例えば、次のように、文字列から変換した数値に対して条件付きで計算を行うコードを作成できます。

num_str = "15"
num = int(num_str)
if num % 3 == 0:
    print(f"{num}は3の倍数です")
else:
    print(f"{num}は3の倍数ではありません")

計算結果を再度文字列に変換する

数値の計算結果を再度文字列に戻したい場合は、str()関数を使います。

result = 100
result_str = str(result)
print(result_str)  # "100"

まとめ:Pythonで文字列を数値に変換するためのベストプラクティス

Pythonで文字列を数値に変換する方法を基本から応用まで解説しました。

文字列から数値への変換は、データ処理や計算において非常に重要なスキルです。

また、エラー処理を適切に行うことで、コードの信頼性を高めることができます。

これからもPythonを活用して、効率的にデータを扱いましょう。

【給付金が受けられる】おすすめプログラミングスクール!
  • DMM WEBCAMP
    転職成功率98%&離職率2.3%
    転職できなければ全額返金DMM.comグループならで非公開求人も多数
  • テックアカデミー
    【転職保証】受講生の100%が内定獲得!9割以上が未経験からスタート!LINEヤフー監修&万全サポート
  • Aidemy Premium
    【給付金利用の相談歓迎】AI・データ分析学ぶならAidemy Premium
  • ウズウズカレッジ
    初心者・文系出身者でもOK、IT未経験からの専門的な就業サポート

コメント

タイトルとURLをコピーしました