Dict ve set comprehension
- Python kursu
- Başlangıç
- Ders 61/116
- 5 dk
{k: v for ...} ve {x for ...} ile öğrenirsin.
Dict comprehension
Dict comprehension (sözlük üretimi) ile bir sözlük tek satırda oluşturulur. Süslü parantez ve iki nokta kullanılır:
squares = {n: n * n for n in [1, 2, 3]}
# {1: 1, 2: 4, 3: 9}Yapı: {anahtar: deger for değişken in liste}. anahtar ve değer her eleman için hesaplanır. Aynı anahtar ikinci kez gelirse üzerine yazılır.
Set comprehension
Set comprehension (küme üretimi) de süslü parantezle yazılır ama iki nokta yoktur:
unique = {x % 3 for x in [1, 2, 4, 7]}
# {0, 1, 2}Sonuç bir kümedir: her değer bir kez görünür. List comprehension ile tek farkı küme parantezi kullanmasıdır.
Küme, sırasız ve tekrarsız bir veri yapısıdır; sıralama önemliyse liste kullan.
Uygulama Kareler sözlüğünü yaz
squares değişkenine, [1, 2, 3, 4] listesindeki her n için n: n * n çiftlerini tutan bir dict comprehension ata. Sonra print(squares) yazdır.
Başlangıç kodu
# Dict comprehension ile kareler sozluguÖrnek çözüm
squares = {n: n * n for n in [1, 2, 3, 4]}
print(squares)Beklenen çıktı
{1: 1, 2: 4, 3: 9, 4: 16}
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Hangisi bir dict comprehension'dir?
- [k: v for k, v in pairs]
- (k: v for k, v in pairs)
- {k: v for k, v in pairs} Doğru cevap
- <k, v for k, v in pairs>
Açıklama: Süslü parantez ve iki nokta dict comprehension belirtir.
2 Comprehension türlerini eşleştir
| Kavram | Anlamı |
|---|---|
[...] |
Liste |
{k: v} |
Sözlük |
{x} |
Küme |
(...) |
Generator |
3 Set comprehension'i tamamla
unique = {x % 3 for x in [____, 2, 4, 7]}
unique = {x % 3 for x in [1, 2, 4, 7]}
Açıklama: [1, 2, 4, 7] listedir, x % 3 kalanları verir.