Python3 | ①リスト・タプル・ディクショナリ
こんにちは、現役理系大学生のShogoです!
今回からPython講座を開講します!全部でいくつになるかわかりませんが、とりあえずやっていこうと思います。
初心者向けの内容となっていますので、ゴリゴリにPythonを書いている方には、物足りない内容だと思います。Pythonにより込み入った講座も考えていますので、お楽しみに。
今回の内容は、「リスト・タプル・ディクショナリ」です。
それでは行きましょう!
開発環境
開発環境は、VScodeです。
VScodeでのPythonの実行方法は、以下のURLを参考にしてみてください。
1-1 リスト [ ]
リストとは、複数の値をまとめるときに便利なものです。
例えば、複数の値を出力したいときに、
a = 'apple'
b = 'banana'
c = 'orange'
print(a) # apple
print(b) # banana
print(c) # orange
# 実行結果はコメントアウト(#)で表示している
とやってもいいですが、いちいちa, b, cやprint(a), print(b)など打ち込むのが面倒ですよね。
そんなときに便利なのがリストです。
x = ['apple', 'banana', 'orange']
print(x) # ['apple', 'banana', 'orange']
[ ] を使うことで、このように3つの値をまとめて表示することができます。
これをひとつずつ取り出したい場合は、次のようにするとよいでしょう。
x = ['apple', 'banana', 'orange']
print(x[0]) # apple
print(x[1]) # banana
print(x[2]) # orange
これで最初の結果と同じようになりました。printの際に x[0] のように値を選択することで、それぞれの要素を取り出すことができます。
✅要素の変更
リストでは、要素の変更ができます。
例えば、appleをpearに変更したいとき、次のように記述します。
x = ['apple', 'banana', 'orange']
print(x[0]) # apple
x[0] = 'pear'
print(x[0]) # pear
このように変更したい要素を変数に代入してあげることで、リストの要素を書き換えることができます。
✅リストの中のリスト
応用すると、リストの中にリストを入れることも可能です。
x = [['apple', 'banana', 'orange'], ['grape', 'lemon', 'durian']]
print(x[0]) # ['apple', 'banana', 'orange']
print(x[1]) # ['grape', 'lemon', 'durian']
1-2 タプル ( )
タプルは、リストと同じように複数の値を扱うことができます。タプルには( )(バーレンの丸括弧)を使います。しかし、要素の追加や消去など、値を変更することはできません。
例えば、先程はappleをpearに変更しました。これと同じことをタプルでやってしまうとエラーがでます。
x = ('apple', 'banana', 'orange')
print(x[0])
x[0] = 'pear'
print(x[0])
TypeError: 'tuple' object does not support item assignment
エラーは、エラー内容を文章で教えてくれます。
この文であれば、「TypeError: 'tuple' object does not support item assignment」→「'tuple'オブジェクトはアイテムの割り当てをサポートしていない。」。つまり、タプル内の要素は変更ができないということがわかります。
✅リストとタプルは何が違うのか
結局リストとタプルは何が違うのか。それは要素が変更可能かということです。
もちろん変更可能のほうが便利なシーンも多いです。しかし、地図の緯度経度など、半不変的データは変更する必要がないので、このようなときにタプルが使われます。
1-3 ディクショナリ { }
今回ラストの内容はディクショナリ(辞書)です。みなさんが想像しているような辞書そのものです。
ディクショナリは、keyとvalueの組み合わせで使用されます。単語があって、それに付随する意味があるという感じです。ディクショナリには、{ }(ブレースの波括弧)が用いられます。
例を見てみましょう。
c = {'apple': 'red', 'banana': 'yellow', 'orange': 'orange'}
print(c) # {'apple': 'red', 'banana': 'yellow', 'orange': 'orange'}
keyとvalueが1対1で対応しています。
この辞書からyellowを出したいとします。1対1で対応しているので、ここではbananaを選択すればいいはずです。
c = {'apple': 'red', 'banana': 'yellow', 'orange': 'orange'}
print(c['banana']) # yellow
要素を変更したい場合は、先程と同じように変数を選択して、代入するといいです。
例えば、りんごが青りんごだったとき、redではなくgreenにしなければなりません。したがって、
c = {'apple': 'red', 'banana': 'yellow', 'orange': 'orange'}
print(c['apple']) # red
c['apple'] = 'green'
print(c['apple']) # green
まとめ
今回は、「リスト・タプル・ディクショナリ」を学習しました。
どの単元もPythonで必須のものなので、ぜひ何度も復習してみてください!
質問や訂正があれば、遠慮なくこの記事にコメント、もしくは、TwitterにDMをしてください!(@shogo_python)
今回の記事が"いいね!"と思ってくれた方は、スキとフォローをよろしくおねがいします!
では、またの機会にお会いしましょう!
今回のおすすめ書籍