Pythonの型とは | 確認と変換の方法

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 と出力されます。

In [1]:
a = 1
type(a) #変数の型を調べる。
In [2]:
type(1) #引数の型も調べることができます。
Out[1, 2]:
int

型が浮動小数点の時は float と出力されます。

In [3]:
b = 12.3
type(b) #変数の型を調べる。
In [4]:
type(12.3) #引数の型を調べる。
Out[3, 4]:
float

型が虚数の時は complex と出力されます。

In [5]:
c = 3.14j
type(c) #変数の型を調べる。
In [6]:
type(3.14j) #引数の型を調べる。
Out[5, 6]:
complex

型が文字列の時は str と出力されます。

In [7]:
d = "this is a text"
type(d) #変数の型を調べる。
In [8]:
type("this is a test") #引数の型を調べる。""で囲う。
Out[7, 8]:
str

型が論理値の時は bool と出力されます。

In [9]:
e = True
type(e) #変数の型を調べる。
In [10]:
type(True) #引数の型を調べる。
Out[9, 10]:
bool

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の演算子」で解説しています。

In [1]:
length = 10*1.23
answer = "長さ"  +  length  +  "cm"
answer
Error:
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-5-1bd0c340f90e> in <module>()
      1 length = 10*1.23
----> 2 answer = "長さ"  +  length  +  "cm"
      3 answer

TypeError: must be str, not float

このエラーを防ぐには、次のように str() を使って、数値を文字列に変換してから出力します。

In [2]:
length = 10*1.23
answer = "長さ" +  str(length)  +  "cm"
answer
Out[2]:
'長さ12.3cm'

3.2. 論理値を文字列に変換する

str() は、数値以外の型も文字列に変換することができます。以下の例では論理値の True を文字列に変換しています。

論理値の演算についても「Pythonの演算子」で解説していますのでご確認ください。

In [3]:
answer = "5<10は" +  str(5<10)  +  "です"
answer
Out[3]:
'5<10はTrueです'

3.3. 整数値や浮動小数点数への型変換

整数値への型変換は int()、浮動小数点数への型変換は float() で行います。

これらを使えば、文字列を数値計算に使えるようになります。

In [4]:
int("250") * 3 #文字列 250 を整数値に型変換して計算。
Out[4]:
750
In [5]:
float("1.5") + 0.2 #文字列 1.5 を浮動小数点数に型変換して計算
Out[5]:
1.7

同じ原理で、int() では、浮動小数点数を整数化することができます。その場合、以下のように小数点以下は切り捨てられます。

In [6]:
int(12.9)
Out[6]:
12

3.4. 2進数、8進数、16進数への型変換

2進数に型変換するには bin()、8進数に型変換するには oct()、16進数に型変換するには hex() を使うと、それぞれ文字列に変換することができます。

In [7]:
bin(10)
Out[7]:
'ob1010'
In [8]:
oct(10)
Out[8]:
'0o12'
In [9]:
hex(10)
Out[9]:
'0xa'

3.5. 論理値への型変換

論理値への型変換には bool() を使います。

In [10]:
a = 10
bool(a)
Out[10]:
True

4. まとめ

いかがだったでしょうか?

型の確認方法も、変換方法も知っておくと便利なので、ぜひ押さえておきましょう。



よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

目次
閉じる