Python | str()、int()、float()で数値型を文字列に、文字列型を数値型に変換する方法
Pythonの()
メソッドを使って方法とサンプルコードを紹介しています。
確認環境
Windows11 ローカル
Python python-3.11.1
数値型を文字列型に変換する
Pythonで数値型の値を文字列型に変換するにはstr()
関数が利用可能です。
第一引数に数値型の値を指定します。
num = 100
str = str(num)
# str は文字列型の '100' が代入されます
文字列型を数値型に変換する(整数の場合)
文字列型の値を整数型の数値型に変換するにはint()
関数が利用できます。
第一引数に文字列型の値を指定しますが、値が数値のみで構成されている文字列である必要があります。
str = "100"
num = int(str)
# num にはint型 100 が代入されます
数値型に変換できない値を指定するとValueError
が出力されます。
これを回避するにはtry…except
文でエラーの判定を実装するなどのコードを追加する必要があります。
str = "100a"
num = int(str)
# ValueError: invalid literal for int() with base 10: '100a'
文字列型を数値型に変換する(浮動小数点の場合)
文字列型の値を浮動小数点を含む数値型に変換するにはfloat()
関数が利用できます。
int()
と同じく第一引数に文字列型の値を指定しますが、値が数値のみで構成されている文字列である必要があります。
str = "100.1"
num = float(str)
# num にはfloat型 100.1 が代入されます
小数点以下を持たない整数の場合も浮動小数点を持つfloat型に変換されます。
str = "100"
num = float(str)
# num にはfloat型 100.0 が代入されます
小数点以下の桁数を調節したい場合はround()
関数(四捨五入)を使った方法などがあります。
str = "123.456789"
num = round(float(str),3)
# num にはfloat型 23.457 が代入されます
float()
関数に変換できない値を指定するとValueError
が出力されます。
これを回避するにはtry…except
文でエラーの判定を実装するなどのコードを追加する必要があります。
str = "100a"
num = float(str)
# ValueError: invalid literal for int() with base 10: '100a'
ディスカッション
コメント一覧
まだ、コメントがありません