- タプルは、リストにとてもよく似た性質をもっている。
- タプルは、要素を変更できないシーケンス
- 複数の要素をもつことができる
- インデックスを使って要素にアクセスできる。
- 要素の変更ができない。
- タプルの定義方法
- タプルから要素を取り出す
- タプルは要素を変更することができない
- TypeError: ‘tuple’ object does not support item assignment が発生する
- タプルは、要素を削除することができない。(変更されることになる)
- タプル同士を連結することができる
- タプルもリストと同じように、len(),in演算子,スライスを使える。
- 要素が1つだけのタプルを定義するには、少しコツが必要。
- 「(10,)」のように、要素の後にカンマを補う必要がある。
- タプルの利点
- ディクショナリのキーや、setの要素にすることができる。
補足
# coding: utf-8
# In[1]:
### タプルの定義
month_names = ('January', 'February', 'March', 'April', 'May', 'June', 'July')
month_names
# In[2]:
### タプルから要素を取り出す
month_names[1]
# In[3]:
### タプルの要素を変更する
month_names[0] = '睦月'
# In[4]:
### タプル同士の連結 ###
month_names2 = month_names + ('August', 'September', 'October', 'November', 'December')
month_names2[11]
# In[5]:
### タプルをキーとしたディクショなりの作成
pref_capitals = {(43.06417, 141.34694):"北海道(札幌)",
(40.82444, 140.74): "青森県(青森市)",
(39.70361, 141.1525):"岩手県(盛岡市)"}
pref_capitals
# In[11]:
### 指定した緯度、経度に合致する県庁所在地を調べる
loc = (39.70361, 141.1525)
for key in pref_capitals:
if loc == key:
print(pref_capitals[key])
break
# In[19]:
### 指定した緯度、経度に最も近い県庁所在地を調べる
# 調べたい地点の緯度、経度
loc = (41.768793, 140.72881)
# 最寄りの県庁所在地を保存する変数
nearest_cap = ''
# 最寄りの地点までの距離を保存する変数
nearest_dist = 10000
# keyでループする
for key in pref_capitals:
dist = (loc[0]-key[0])**2+(loc[1]-key[1])**2
print(key, pref_capitals[key])
if nearest_dist > dist:
# より近い地点が見つかったので、入れ替える。
nearest_dist = dist
nearest_cap = pref_capitals[key]
print(nearest_cap)
# In[22]:
aaa = (555,333,333)
aaa
# In[ ]: