-
tupleveri tipi listeler gibi birden çok veri tipini bir arada tutmamızı sağlar. -
listelerden farklı olarak
tuplelarimmutabledır -
Mesela bir deniz fenerinin konumunu belirtmek istiyoruz. bunun
xveykoordinat değerleri var (x,y). Deniz fenerini söküp götüremiyoruz, ben bu iki değerin sabit, değiştirilemez olmasını istiyorum. Burada bu iki değeri tutmak içintuplekullanmam mantıklı olabilir. Değişmiyeceğini bildiğim değerleri bir arada tutmak için -
tuplelar(element1,element2...)şeklinde tanımlanır. -
tuplelar listeler gibi farklı veri yapılarında elemanlardan oluşabilir. Elemanlarıtuplebile olabilir
x = 10
y = 34konum = (10, 34)- Aynı listelerdeki gibi indexleme yapabiliyoruz
konum[0]10
konum[:](10, 34)
- Ama değerlerini değiştiremiyoruz
konum[0] = 100---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-7-62043221042e> in <module>
----> 1 konum[0] = 100
TypeError: 'tuple' object does not support item assignment
- Farklı veri tipleri barındırabiliyor
t = (1,2,3,"a")t(1, 2, 3, 'a')
t = ((1,2),3)tt[0](1, 2)
t[1]3
t = ([1,2,3],2,(1,2))t([1, 2, 3], 2, (1, 2))
t[0][0] = 23t([23, 2, 3], 2, (1, 2))
l = [[1,2,3], [10,20]]l[[1, 2, 3], [10, 20]]
- x ve y'nin değerlerini değiştirmek istiyorum diyelim
x = 2
y = 3- bunu şöyle yapabiliriz
temp = x
x = y
y = tempx3
y2
- Ama bunu tuple'lar ile 1 satırda yapabiliriz
x = 2
y = 3(x, y) = (y, x)x3
y2
- parantez koymamıza da gerek yok. 1,2,3,"a"... gibi parantezsiz belirtsek de python onu
tupleolarak görüyor
1,2,3,4(1, 2, 3, 4)
a = 1,2,3,4a(1, 2, 3, 4)
type(a)tuple
x = 2
y = 3x, y = y, xx3
y2
x = 2
y = 3[x, y] = [y, x]x3
y2