Pythonでstringをintに
Pythonで数字の文字列strを数値int, floatに変換
Pythonでstringをintに変換するには、int()
関数を使用します。int()
関数には、stringを引数として渡します。
string = "123"
int_value = int(string)
print(int_value)
このコードは、stringをintに変換して、int_valueに格納します。そして、int_valueを出力します。
出力:
123
また、int()
関数には、第二引数として、変換する基数を指定することもできます。10進数以外の2進数や8進数、16進数も変換可能ということですね。
string = "123"
int_value = int(string, 10)
print(int_value)
このコードは、stringを10進数に変換して、int_valueに格納します。
出力:
123
ただし、stringが整数でない場合は、エラーが発生します。
Python
string = "abc"
int_value = int(string)
print(int_value)
エラー内容はこんな感じ。
ValueError: invalid literal for int() with base 10: 'abc'
stringが整数かどうかを事前にチェックが必要かも。
string = "123"
if string.isdigit():
int_value = int(string)
print(int_value)
else:
print("string is not an integer")
このコードは、stringが整数かどうかをチェックしています。stringが整数の場合は、int_valueに格納して出力します。stringが整数でない場合は、エラーメッセージを出力します。
出力:
123
数字の文字列を浮動小数点数に変換: float()
Pythonで文字列を浮動小数点に変換するには、float()
関数を使用します。float()
関数には、文字列を引数として渡します。
string = "123.456"
float_value = float(string)
print(float_value)
このコードは、stringを浮動小数点に変換して、float_valueに格納します。そして、float_valueを出力します。
出力:
123.456
ただし、stringが浮動小数点でない場合は、エラーが発生します。
string = "abc"
float_value = float(string)
print(float_value)
エラー内容はこんな感じ。
ValueError: could not convert string to float: 'abc'
stringが浮動小数点かどうかをチェックするには以下のようにします。
string = "123.456"
if string.isdigit():
float_value = float(string)
print(float_value)
else:
print("string is not a float")
出力:
123.456
また、float()
関数には、第二引数として、小数点以下の桁数を指定することもできます。
string = "123.456"
float_value = float(string, 2)
print(float_value)
このコードは、stringを小数点以下2桁までで変換して、float_valueに格納します。
出力:
123.46