今回はデータ型とは何か?また、データ型の変換について、解説していきます。
データ型とは
データ型とは
データ型とは、変数に入れるデータの種類のことをいいます。
データ型は様々な種類が存在します。
今回は代表的な3つのデータ型を紹介します。
- 数値型
- 文字列型
- プール型
それでは、1つずつ解説していきますが、まず最初にPythonのデータ型は「type」を使用して確認ができます。
データ型を確認するには
print(type(変数))
数値型
数値型
数値型には、整数の「int型」、小数点まで扱う場合は「float型」があります。
変数「number001」に、100を代入し、変数「number002」に、1.01を代入してみます。
number001 = 100
number002 = 1.01
データ型確認例1
# 変数に整数を代入します。
number001 = 100
# 出力します。
print(number001)
# 出力結果は「100」と表示されます。
# データ型を確認します。
print(type(number001))
# データ型は「int」と表示されて、int型であることが確認できます。
データ型確認例2
# 変数に整数を代入します。
number002 = 1.01
# 出力します。
print(number002)
# 出力結果は「1.01」と表示されます。
# データ型を確認します。
print(type(number002))
# データ型は「float」と表示されてfloat型であることが確認できます。
文字列型
文字列型
文字列型は、クオーテーションまたはダブルクオーテーションで文字を囲むことで文字列型になります。
文字列型は「string型」ともいいます。
変数「name001」に、「’Hanako’」を代入し、変数「name002」に、「’10’」を代入してみます。
name001 = ‘Hanako’
name002 = ’10’ (あえてクオーテーションを付けて文字列型にしてみます。)
データ型確認例3
# 変数に「'Hanako'」を代入します。
name001 = 'Hanako'
# 出力します。
print(name001)
# 出力結果は「Hanako」と表示されます。
# データ型を確認します。
print(type(name001))
# データ型は「str」と表示されて、string型であることが確認できます。
データ型確認例4
# 変数に「'10'」を代入します。
name002 = '10'
# 出力します。
print(name002)
# 出力結果は「10」と表示されます。
# データ型を確認します。
print(type(name002))
# データ型は「str」と表示されて、string型であることが確認できます。
プール型
プール型
ブール型とは、「True」また「False」の2つのうち、どちらか1つを持つ型のことをいいます。
ブール型は、Boolean型(ブーリアン型)ともいいます。
「True」とは、変数に代入された値と右辺が正しい「真」ときに「True」が表示されます。
「False」とは、変数に代入された値と右辺が誤り「偽」のときに「False」が表示されます。
変数「X」に、「10」を代入し、変数「Y」に、「20」を代入してみます。
X = 10
Y = 20
そして、変数「age001」を使って、「X < Y」と「X > Y」の真偽をみてみます。
データ型確認例5
# 変数「X」に「10」を代入します。
X = 10
# 変数「Y」に「20」を代入します。
Y = 20
# 真偽を確認します。
age001 = (X < Y)
# 出力します。
print(age001)
# 出力結果は「True」と表示されます。
# データ型を確認します。
print(type(age001))
# データ型は「bool」と表示されて、bool型であることが確認できます。
# 真偽を確認します。
age001 = (X > Y)
# 出力します。
print(age001)
# 出力結果は「False」と表示されます。
# データ型を確認します。
print(type(age001))
# データ型は「bool」と表示されて、bool型であることが確認できます。
Pythonは動的型付け言語
Pythonは動的型付け言語
データ型の種類について解説してきましたが、あなたは気がつかれましたか?
実は、Pythonでは変数にデータを入れる際に、データ型を指定する必要がありません。
それは、Pythonがデータ型を自動的に判断してくれるからです。
しかし、全てのプログラミング言語がデータ型を自動的に判断してくれるわけではありません。
Pythonのようなプログラミング言語のことを動的型付け言語といいます。
動的型付け言語には、PHP、Python、Ruby、などがあります。
それとは反対に、変数にデータを入れる時にデータ型を指定しなければならない言語のことを、静的型付け言語といいます。
静的型付け言語には、Kotlin、Go、Java、C言語などがあります。
Pythonは、便利な動的型付け言語であるということを覚えておいてください。
データ型の違い
データ型の違い
Pythonは、データ型を自動的に判断してくれる便利な動的型付け言語であるということを解説してきましたが、逆を言えば自動的に判断されないように、あえて指定してあげなければならない場合があるということです。
例えば、データ型が異なる場合、プログラムは異なる動作をするため、データ型を指定する必要があります。
# (例)「数値型」の場合
# 出力します。
print(5 + 5)
# 出力結果は、「10」となります。
# (指定をしなくても自動的に数値型になります。)
# (例)「文字列型」(数字を文字として扱いたい場合)
# 出力します。
print('5' + '5')
# 出力結果は、「55」となり、数値ではなく文字として扱われます。
上記のように、数字を文字として扱いたい場合は、クオーテーションまたは、ダブルクオーテーションを付けることで文字列型として指定できます。
数値型にしたい場合は、指定をしなくても自動的に数値型になります。
(例)
print(‘5’ + 5)
「文字列型」と「数値型」を連結するとエラーになってしまいます。
そして今度は、2つのデータ型が異なる「文字列型」と「数値型」を連結すると、上記のようにエラーになってしまうのですが、文字列型か数値型に変換して統一することでデータとして扱えるようになります。
データ型を変えることを「型変換」といいます。
数値型を文字列型に変換
型変換 「str」
「数値型」を「文字列型」に変換するには、型変換 「str」を使います。
数値型を文字列型に変換することで、文字列同士の連結として扱われるようになり、連結ができるようになります。
str(変数)
# (例)変数 「age」 に値を代入します。
age = 20
# 変数 「age」 を文字列型に変換し連結させて出力します。
print('私は' + str(age) + '歳です。')
# 出力結果は、「私は20歳です。」と出力されます。
文字列型を数値型に変換
型変換 「int」
文字列型を数値型に変換するには、型変換「int」を使います。
int(変数)
# (例)変数 「count」 に値を代入します。
count = '7'
# 変数 「count」 を数値型に変換し計算をさせて出力します。
print(int(count) + 3)
# 出力結果は、「10」と出力されます。