SORU
17 Ocak 2012, Salı


'in ne listeler arasındaki fark Python köşeli parantez ve parantez?

>>> x=[1,2]
>>> x[1]
2
>>> x=(1,2)
>>> x[1]
2

Her ikisi de geçerli mıdır? Tek bir nedenle tercih edilir?

CEVAP
17 Ocak 2012, Salı


Köşeli parantez tuples lists.

Bir liste değiştirilebilir, içeriğini değiştirebilirsiniz anlama gelir

>>> x = [1,2]
>>> x.append(3)
>>> x
[1, 2, 3]

dizilerini değil iken:

>>> x = (1,2)
>>> x
(1, 2)
>>> x.append(3)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'tuple' object has no attribute 'append'

Diğer temel fark, bir başlığın diğer şeyler arasında bir sözlük için bir anahtar olarak kullanabileceğiniz hashable, anlamı olmasıdır. Örneğin:

>>> x = (1,2)
>>> y = [1,2]
>>> z = {}
>>> z[x] = 3
>>> z
{(1, 2): 3}
>>> z[y] = 4
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unhashable type: 'list'

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • CareyHolzman

    CareyHolzman

    24 Ocak 2008
  • majesticdubstep

    majesticdubs

    3 Kasım 2011
  • SelmerSaxMan

    SelmerSaxMan

    24 HAZİRAN 2006