Image

Pythonのリストと辞書の使い方の違いについて押さえよう!Pythonのデータ型を学ぼう

Pythonのリストとタプル、辞書型について使い方を解説しています。Pythonでデータを格納する方法にはリストとタプルと辞書が挙げられます。使い方はリストとタプルはデータを格納するだけ、辞書はキーとなる値とともにデータを格納します。

Pythonのリスト、タプル、辞書について

今回はPythonのリスト、タプル、辞書について学びます

Pythonにはタイトルのようなデータの型があるのでしっかり押さえておきましょう。



目次   

01. Pythonのリストの使い方

02. Pythonのタプルの使い方

03. Pythonの辞書の使い方

04. まとめ


01. Pythonのリストの使い方



## リストを定義
list = [1, 2, 3, 4]


Pythonのリストは[]で括られます

先に触れておきますがリストは要素を後から変更することが可能です



## 縦に並べる
people = [
'Takeshi',
'Takashi',
'Tanishi',
]


Pythonのリストは縦にすることも可能です



## リストの使い方
people = [1, 'Takeshi']


数値と文字などの異なるデータでもリストにすることが可能です



## リストをfor文で回す
number = [1, 2, 3, 4, 5]
for n in number:
print n


リストの要素for文を利用してアクセスすることができます



## リストに格納されたデータを出力
a = ['1', '2', '3', '4', '5', '6', '7']
a1 = a[0] #0番目:'1'
a2 = a[2] #2番目:'3'


リストの要素を選択するときは上記のように番号で指定します。

プログラミングでは要素を0番目から数えます



## スライス
n = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
n1 = n[2:4] #2番目から3番目:[2, 3]
n2 = n[2:] #2番目から最後:[2, 3, 4, 5, 6, 7, 8, 9]
n3 = n[:4] #最初から3番目:[0, 1, 2, 3]


リストでは要素を参照するとき任意の数まとめて参照することができます。

1番左を0番目として任意の場所から任意の場所までという参照ができます。

:はそれ以降か初めからのように要素全てを選択します



## 2個飛ばし
a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
a1 = a[1:5:2] #1番目から4番目まで2個とばし: [1, 3]



## リスト右側から数えてみる
a = ['1', '2', '3', '4', '5', '6', '7']
a1 = a[-1] #最後の数字 '7'
a2 = a[-3:-1] #最後から3番目の数字から最後から1番目の前の数字:['5', '6']



## リストの結合
print [1, 2, 3] + [4, 5, 6] #>>> [1, 2, 3, 4, 5, 6]


リスト結合が可能です



## リストの要素数を確認する
print len([1, 2, 3]) #>>> 3


lenによってリストの要素の数を調べることが可能です



## リストの中にリスト
a = [[1, 2], [3, 4], [5, 6]]


リストの中にリストを作ることも可能です



## リスト内のデータを展開する
lists = [1, 2, 3]
print(*lists)
>>> 1 2 3
## リスト
def lists(a1, *a2):
print(a1)
for i in a2:
print(a2)
lists(*['one', 'two']
>>>one two


リストの要素を展開するときは*を使用します

ここでは引数a2にはリストのa1すなわちone以降のtwoが渡されています。

これはtwo以降があったとしても問題なく動作します。

*a2では可変長引数といって引数の長さを与える要素の数に指定しています


02. Pythonのタプルの使い方



## タプル
tuple = (1, 2, 3, 4)


タプルは()で括られます

タプルは要素に変更を加えることができません



## タプルの利用
number = (10) #タプルではなく数値の10
tuple = (10,) #タプルの(10,)


タプルの要素が1つの場合,をつける必要があります



## リストとタプルの違い
n1 = [1, 2, 3, 4]
n2 = (1, 2, 3, 4)

n1[2] = 5 # 代入できる
n2[2] = 5 # エラーとなり、TypeError例外が発生する


タプルの要素は変更を加えることができません



## リストをタプルにする
print list((1, 2, 3)) #>>> [1, 2, 3]
print tuple([1, 2, 3]) #>>> (1, 2, 3)


リストタプルに変更することもできます



## タプルの展開
tuples = (1, 2, 3)
print(*tuples)
>>> 1 2 3


タプルも展開するときはリストと同じです


03. Pythonの辞書の使い方



## 辞書
dict = {'Takashi': 1, 'Takeshi': 2, 'Tanishi': 3}


辞書ではキーの値ペアのリストを保持しています



## 辞書にアクセスする
dict1 = dict['Takashi']
dict2 = dict['Takeshi']
dict3 = dict['Tanishi']


辞書にアクセスするときは上記のようにしてアクセスします



## 辞書
d = {'A': 1, 'B': 2, 'C': 3}

for k, v in d.items():
print k, v #C 3, B 2, A 1

for k in d.keys():
print k, d[k] #A 1, B 2, C 3

for v in d.values():
print v #3, 2, 1

for k, v in d.iteritems():
print k, v #C 3, B 2, A 1


参照される値の順番は揃っていません



## 辞書では**によって展開することができる
dict = {1, 2, 3}
print(**dict)
>>> 1 2 3


辞書では**をつけて展開することができます


04. まとめ


お疲れ様でした。

ここまで読んでいただきありがとうございました。

今回はPythonのリスト、タプル、辞書の違いを学びました。

辞書やリストは思っている以上に使用するのでしっかりと押さえておきましょう。