型の変換
型変換
違う型同士での演算
違う型同士の値で演算を行う場合、エラーがおこる場合があります。
演算可能な場合
# int * str では、str の値が
# int の値回繰り返したものが返される
# hoge hoge hoge が表示される
print('hoge ' * 3)
# float + int では、int 型の値が
# float に変換されてから演算される
# 10.0が表示される
print(5.0 + 5)
演算不可能な場合
# TypeError: can only concatenate str (not "int") to str
'hoge' + 1
# TypeError: unsupported operand type(s) for /: 'str' and 'float'
'hoge' / 3
型変換を行う関数
int(値)などの関数を利用して、値の型を変更することができます。
利用できる関数
int(引数)
float(引数)
str(引数)
bool(引数)
使用例
# **文字列として**の 12
twelve = '12'
# 12.0 が表示される
# → float になっている
print(float(twelve))
# 0 が表示される
# → int になっている
print(int(False))
演習
- True の値を int 型に型変換し、さらに 10 倍した値を表示するプログラムを書いて下さい。
- 何かしら、
TypeErrorを吐くようなコードを書いて下さい。
※この演習では出力のチェックは作動しません。
# True の値を int 型に型変換する
# 型変換した値に 10 を掛けた値を表示
# TypeErrorを吐く