Chatpter.1 - タプルとは
タプルとは
簡単に言うと、リストの「書き換え禁止版」です。
一度タプルを作ったら、何があっても値を書き換えたり、要素を追加したり、要素を削除したりすることは一切できなくなります。
-
見た目はすでに何度か見たと思いますが、こんな感じです。
nums = (1, 2)
titles = ('To TUPる', '魔法少女猫たぷる')
( ) で囲います。リストの [ ] が ( ) になっただけです。
-
値を参照することはできます。
titles = ('To TUPる', '魔法少女猫たぷる') print(titles[0])
To TUPる
タプルを作ってみよう!
-
値を書き換えようとするとこうなります。
titles = ('To TUPる', '魔法少女猫たぷる') titles[0] = 'Rewrite' print(titles)
Traceback (most recent call last): File "Main.py", line 2, in <module> titles[0] = 'Rewrite' TypeError: 'tuple' object does not support item assignment
-
要素を削除しようとするとこうなります。
titles = ('To TUPる', '魔法少女猫たぷる') del titles[0] print(titles)
Traceback (most recent call last): File "Main.py", line 2, in <module> del titles[0] TypeError: 'tuple' object doesn't support item deletion
要素を追加したり挿入したりする方法は用意されてませんので、試しようがありません。
-
また、こうするとエラーになります。
nums = (1) print(nums[0])
Traceback (most recent call last): File "Main.py", line 2, in <module> print(nums[0]) TypeError: 'int' object is not subscriptable
( ) が省略されて、int の
1
になってしまうのです。 -
要素が1つのタプルを作る場合はこうします。
titles = ('To TUPる',) print(titles)
('To TUPる',)
実際に見てみてください!
変なの~。😹
nums = (1)
print(nums)
print(type(nums))
1
<class 'int'>