Python入門: データ型
Intro to Python: Data Types
Treemind Academy | Sept 2, 2021
データ型の種類一覧
前章では、Pythonの変数についてご説明させていただきました。
多くのプログラミング言語では、まず変数名を定義し、後から値を代入します。
Pythonの場合は、代入する値の種類によって自動的に変数のデータ型(data type)が指定されます。
これもPythonが書きやすいとされる理由の一つです。
例えば、下記のように文字の値をmy_nameという変数に代入します。
my_name = "太郎"
この場合、my_nameという変数は文字列のデータ型として設定されます。
他にも様々なデータ型があり、各用途によって使い分けられています。重要なデータ型をリストアップしました。
データ型 | 概要 | 例 |
str 文字列 (String) | ” ” か ‘ ‘ で囲むと文字列データ型の変数が定義される(どちらでもOK) 順序があるため、「2番目の文字を参照する」といった指定が可能 特定の文字を変更することはできない | a_string = “word” |
int 整数 (Integer) | 整数を代入するとintegerデータ型の変数が定義される | a_integer = 7 |
float 浮動小数点(Float) | 浮動小数点の数字を代入するとfloatデータ型の変数が定義される | a_float = 7.12 |
list リスト | ブラケット [ ] で囲むとlistデータ型の変数が定義される 1つの変数で複数の値、複数のデータ型の値を同時に格納できる 要素の間をカンマ , で区切る 要素に順序があるため、「2番目の値を参照する」といった指定が可能 またそれらの値を変更することも可能。これをミュータブル (mutable)という | a_list = [“apple”,”banana”,”orange”] b_list = [“a”,2,”b”,3.31,”a”] |
tuple タプル | パーレン ( ) で囲むとtupleデータ型の変数が定義される 1つの変数で複数の値、複数のデータ型の値を同時に格納できる 要素の間をカンマ , で区切る 1つの値を囲むだけではtupleと認識されないため 1要素のみのtupleを定義する場合は (要素1, ) という形式で2つ目がなくてもコンマを入れる必要がある 順序があるため、「2番目の値を参照する」といった指定が可能 Listとは対象的に、Tupleは要素を変更できない これをイミュータブル (immutable)という | a_tuple = (“apple”,”banana”,”orange”) b_tuple = (“a”,2,”b”,3.31) |
dict 辞書 (Dictionary) | ブレース { }で囲み、{ key : value }のペアで値を代入すると dictionaryデータ型の変数が定義される 順序があるため、「2番目の値を参照する」といった指定が可能 (Pythonバージョン3.7以前はdictionaryには順序がありませんでした) dictionaryはミュータブル(mutable)なので、要素を変更できる 重複したデータは格納できない (keyが重複してはいけない) | a_dict = {“apple”:4,”banana”:2,”orange”:1} |
set セット | ブレースで囲むとsetデータ型の変数が定義される 空欄のプレース { } を使用するとdict型が定義されるため、 空欄のsetを定義する場合は、set()関数を使用する必要がある 1つの変数で複数の値、複数のデータ型の値を同時に格納できる 要素の間をカンマ , で区切る 重複した値は保存されないので、重複した要素は1つに集約される setはイミュータブル (immutable)であり、List型のように ミュータブル(要素を変更可能)なデータ型は要素として格納できない setの要素には順序が記録されない | a_set = {1,2,3,4,5,6} |
bool ブール (Boolean) | TrueかFalseのどちらかの値のみを格納できる | a_boolean = True |
データ型の確認
コードを書いている最中、扱っている変数のデータ型を確認することがよくあります。
その際に、変数のデータ型を教えてくれるのが type()関数です。
a_variable = 5
print(type(a_variable))
# <class 'int'>と表示される
データ型は多くのエラーの原因になるコンセプトなので重要です!