Python Tuples: Değişmez Diziler ve Paketin Açılması

Python tuple'larını anlayın. Listelerde demetlerin ne zaman kullanılacağını, demet paketini açmanın nasıl çalıştığını ve değişmezliğin veri güvenliğini nasıl garanti ettiğini öğrenin.

Editör'de deneyin

Genel Bakış

Tuple, Python'daki sıralı, değişmez bir öğe dizisidir. Köşeli parantez `[]' içine alınan ve değiştirilebilen listelerden farklı olarak, demetler parantez `()` içine alınır ve oluşturulduktan sonra değiştirilemez. Bir demetteki öğeleri eklemeye, eklemeye, silmeye veya yeniden atamaya çalışmak, çalışma zamanı hatasıyla sonuçlanacaktır. Bu değişmezlik bir güvenlik özelliği görevi görerek uygulamanız üzerinden iletilen verilerin sabit ve güvenli kalmasını sağlar.

Tuple'lar değişmez olduğundan listelerden daha hızlıdırlar ve daha az bellek kullanırlar. Bunlar aynı zamanda hash edilebilirdir (demet içindeki tüm elemanların hashable olması koşuluyla), bu da onların sözlüklerde anahtar veya kümelerdeki elementler olarak kullanılmasına olanak tanır; bu özellik listeleri desteklenmez. Tuple'lar geleneksel olarak bir veritabanı satırını, koordinatları veya RGB renk değerlerini temsil etmek gibi heterojen veri kayıtlarını gruplamak için kullanılır.

Tuple'ların en şık özelliklerinden biri Tuple Paket Açma'dır. Bu, bir demetin öğelerini tek bir satırdaki bireysel değişkenlere atamanıza olanak tanır (örneğin, 'x, y = koordinatlar'). Bir fonksiyondan birden fazla değer döndürülürken yoğun olarak kullanılır. Python ayrıca, geçici bir üçüncü değişkene ihtiyaç duymadan paket açma (`a, b = b, a`) kullanarak değişkenlerin dinamik olarak değiştirilmesine olanak tanır, böylece kodunuzu önemli ölçüde daha temiz ve takip edilmesi daha kolay hale getirir.

Kod ve Yürütme Çıkışı

Koordinatları demetler halinde oluşturma, değişmezlik sınırlarını gösterme ve öğeleri açma.

tuples_demo.py
Editör'de deneyin
# Creating tuples
location = (40.7128, -74.0060)  # NYC Coordinates
print(f"Latitude: {location[0]}, Longitude: {location[1]}")

# Tuple unpacking
lat, lon = location
print(f"Unpacked Lat: {lat} | Unpacked Lon: {lon}")

# Function returning multiple values
def get_user_info():
    return "Alice", 25, "admin"

name, age, role = get_user_info()
print(f"{name} ({role}) is {age} years old.")
Terminal Çıkışı
Latitude: 40.7128, Longitude: -74.006
Unpacked Lat: 40.7128 | Unpacked Lon: -74.006
Alice (admin) is 25 years old.

Adım Adım Uygulama

  • Yardımcı işlevlerden birden çok değeri temiz bir şekilde döndürme
  • Koordinatlar, renkler veya veritabanı kayıtları gibi sabitleri saklama
  • Çok boyutlu eşlemeler için değişmez sözlük anahtarlarını tanımlama

Sıkça Sorulan Sorular

Tek öğeli bir tuple'ı nasıl tanımlarım?

Öğeden sonra bir virgül eklemelisiniz; örneğin single_item = (42,). Virgül olmadan, Python bunu standart parantez içine alınmış bir ifade olarak ele alır.

Bir demet içine yerleştirilmiş bir listeyi değiştirebilir misiniz?

Evet. Demet referansının kendisi değişmez olsa da, listeler gibi değiştirilebilir nesneler içeriyorsa, bu listelerin içeriğini yerinde değiştirebilirsiniz.

İlgili Konular

Önerilen Python Kaynakları

İlgili etkileşimli eğitimler, yardımcı sayfalar ve kod karşılaştırmalarıyla bilginizi genişletin.