Pythonでは、通常の演算では値の型について、それほど意識する必要はありません。ただし、最低限の知識は必要です。
そこで、ここでは、Pythonの型について、
- 型の一覧
- 型を確認する方法
- 型を変換する方法
を、それぞれ解説しています。型について調べる時に、必要な情報は全て盛り込んでいますので、ぜひ参考にしてください。
1. Pythonの型
以下が型の一覧です。
型 | 例 | 説明 |
integer | 1, 123, -12 | 整数。正の数字も負の数字も含む。 |
floating-point numbers | 1.2, -0.5, 3E2, 1/2 | 浮動小数点数。 |
complex numbers | 3j, 3.21J | 虚数。 |
string | text | 文字列。 |
boolean | True, False | 論理値。 |
コードを書いている時に、型を確認したくなった時に調べる方法があります。なお、数値に関しては「Pythonの数値計算」でより詳しく解説しています。
2. Pythonで型を確認、判定する方法
Pythonで型を調べて確認したい時は type() を使います。()には引数も変数も入れることができます。
早速見ていきましょう。
型が整数の時は int と出力されます。
a = 1
type(a) #変数の型を調べる。
type(1) #引数の型も調べることができます。
型が浮動小数点の時は float と出力されます。
b = 12.3
type(b) #変数の型を調べる。
type(12.3) #引数の型を調べる。
型が虚数の時は complex と出力されます。
c = 3.14j
type(c) #変数の型を調べる。
type(3.14j) #引数の型を調べる。
型が文字列の時は str と出力されます。
d = "this is a text"
type(d) #変数の型を調べる。
type("this is a test") #引数の型を調べる。""で囲う。
型が論理値の時は bool と出力されます。
e = True
type(e) #変数の型を調べる。
type(True) #引数の型を調べる。
3. Pythonの型を変換する方法
Python では、文字列の型を変換することができます。以下は、型変換の際に使う関数の一覧表です。
関数 | 例 | 説明 |
str() | str(length), str(5<10) | 文字列に変換する。 |
int() | int(“250”), int(12.9) | 整数値に変換する。 |
float() | float(“1.5”) | 浮動小数点数に変換する。 |
bin() | bin(10) | 2進数に変換する。 |
oct() | oct(10) | 8進数に変換する。 |
hex() | hex(10) | 16進数に変換する。 |
bool() | bool(a) | 論理値に変換する。 |
それぞれ見ていきましょう。
3.1. 数値を文字列に変換する
Pythonでは、数値と文字列を連結すると、以下のようにエラーが出ます。連結については、「Pythonの演算子」で解説しています。
length = 10*1.23
answer = "長さ" + length + "cm"
answer
このエラーを防ぐには、次のように str() を使って、数値を文字列に変換してから出力します。
length = 10*1.23
answer = "長さ" + str(length) + "cm"
answer
3.2. 論理値を文字列に変換する
str() は、数値以外の型も文字列に変換することができます。以下の例では論理値の True を文字列に変換しています。
論理値の演算についても「Pythonの演算子」で解説していますのでご確認ください。
answer = "5<10は" + str(5<10) + "です"
answer
3.3. 整数値や浮動小数点数への型変換
整数値への型変換は int()、浮動小数点数への型変換は float() で行います。
これらを使えば、文字列を数値計算に使えるようになります。
int("250") * 3 #文字列 250 を整数値に型変換して計算。
float("1.5") + 0.2 #文字列 1.5 を浮動小数点数に型変換して計算
同じ原理で、int() では、浮動小数点数を整数化することができます。その場合、以下のように小数点以下は切り捨てられます。
int(12.9)
3.4. 2進数、8進数、16進数への型変換
2進数に型変換するには bin()、8進数に型変換するには oct()、16進数に型変換するには hex() を使うと、それぞれ文字列に変換することができます。
bin(10)
oct(10)
hex(10)
3.5. 論理値への型変換
論理値への型変換には bool() を使います。
a = 10
bool(a)
4. まとめ
いかがだったでしょうか?
型の確認方法も、変換方法も知っておくと便利なので、ぜひ押さえておきましょう。
コメント