Python Sözlüğü Eğitimi: Yöntemler, Örnekler ve Ortak Kalıplar

  1. Ana sayfa
  2. Blog
  3. Yazılım Geliştirme

Yazılım Geliştirme

Python Sözlüğü Eğitimi: Yöntemler, Örnekler ve Ortak Kalıplar

Sözlükler, JSON yanıtlarından yapılandırmaya kadar Python’un her yerindedir. Bunları nasıl oluşturacağınızı, okuyacağınızı ve güncelleyeceğinizi öğrenin, ardından gerçek projelerde kullanacağınız sayma, gruplandırma ve birleştirme modellerini öğrenin.

9 dk okuma
Python sözlüğü eğitimi: yöntemler, örnekler ve ortak kalıplar

Önemli noktalar

  • Bir Python sözlüğü anahtar ve değer çiftlerini saklar ve bir değeri anahtarına göre çok hızlı bir şekilde arar.
  • Köşeli parantezler KeyError‘yi yükselttiğinden bir anahtarın eksik olabileceği durumlarda get()‘i kullanın.
  • Anahtarların dizeler, sayılar veya tuplelar gibi karıştırılabilir olması gerekir. Listeler anahtar olamaz.
  • copy() sığ olduğundan, deepcopy kullanmadığınız sürece iç içe geçmiş veriler paylaşılmaya devam eder.

Liste, numaralı kutulardan oluşan bir satırsa, Python sözlüğü, etiketli kutulardan oluşan bir dizidir. İstediğiniz şeyi konuma göre değil isme göre sorarsınız, bu nedenle sözlükler JSON verilerinin, yapılandırmanın, önbelleklerin ve Python’un çoğunun arkasında yer alır.

Bu eğitim temel bilgilerle başlıyor ve deneyimli geliştiricilerin her gün kullandığı kalıplara doğru ilerliyor. Tüm örnekleri Python 3.13’te çalıştırdık ve gösterilen çıktı bu çalıştırmadan geliyor.

Sözlük nedir?

Bir sözlük veya dict, anahtarları değerlerle eşleştirir. Her anahtar yalnızca bir kez görünür ve değerler, listeler veya diğer sözlükler dahil olmak üzere herhangi bir şey olabilir.

Tür Erişim: sipariş edildi Kopyalar Şunun için en iyisi:
liste Pozisyon Evet İzin verildi Diziler
demet Pozisyon Evet İzin verildi Sabit kayıtlar
ayarlamak Yalnızca üyelik Hayır İzin verilmiyor Benzersiz öğeler
dikte etmek Anahtar Kampanya siparişi Anahtarlar benzersizdir Ada göre aramalar

Python 3.7’den beri sözlükler resmi olarak ekleme sırasını koruyor. Birçok eski öğreticide hâlâ bunları sırasız olarak adlandırılıyor ve bu artık doğru değil. Diğer türlerin daha geniş bir karşılaştırması için Python list vs Tuple vs set konusuna bakın.

Sözlükler karma tablosu kullandığından aramalar hızlıdır. Bir anahtarın kontrol edilmesi, sözlüğün on veya bir milyon öğe içermesi ile hemen hemen aynı süreyi alır; oysa liste büyüdükçe arama işlemi yavaşlar.

Sözlük oluştur

user = {"name": "Asha", "age": 31, "city": "Pune"}

empty = {}
from_keywords = dict(name="Asha", age=31)
from_pairs = dict([("a", 1), ("b", 2)])

Kıvrımlı ayraçlar en yaygın biçimdir. Bir tuzak: {} boş bir küme değil, boş bir sözlük oluşturur. Boş bir küme için set()‘ye ihtiyacınız vardır.

Değerleri güvenle okuyun

Bir değeri okumanın iki yolu vardır ve aradaki fark, bir anahtarın mevcut olmadığı durumlarda önemlidir:

user["name"]                  # 'Asha'
user["email"]                 # KeyError: 'email'

user.get("email")             # None
user.get("email", "not set")  # 'not set'

Anahtarın mevcut olması gerektiğinde köşeli parantez kullanın, böylece eksik bir anahtar yüksek sesle başarısız olur. API yanıtındaki isteğe bağlı bir alan gibi devamsızlığın normal olduğu durumlarda get() kullanın. Bir anahtarı kontrol etmek için değerler yerine anahtarlara bakan in operatörünü kullanın:

"city" in user    # True
"Pune" in user    # False

Ekle, güncelle ve kaldır

Bir anahtara atama, varsa onu günceller, yoksa ekler:

user["age"] = 32
user["email"] = "asha@example.com"
print(user)

# {'name': 'Asha', 'age': 32, 'city': 'Pune', 'email': 'asha@example.com'}

Python öğeleri kaldırmak için çeşitli yollar sunar:

user.pop("city")          # returns 'Pune' and removes it
user.pop("phone", None)   # no error if it is missing
del user["email"]         # removes it, and raises KeyError if missing
user.clear()              # empties the dictionary

Değeri geri istediğinizde pop()‘i kullanın. İkinci argüman olarak bir varsayılanı iletmek, anahtar orada olmadığında bir hatayı önler. popitem() en son eklenen çifti kaldırır ve döndürür.

Bir sözlük üzerinde döngü yap

Döngü doğrudan size anahtarları verir. Hem anahtarları hem de değerleri almak için items() kullanın:

user = {"name": "Asha", "age": 32}

for key, value in user.items():
    print(key, "=", value)

# name = Asha
# age = 32

keys(), values() ve items() kopyalar yerine canlı görüntüleri döndürür, dolayısıyla daha sonraki değişiklikleri yansıtırlar. Bir sözlük üzerinde döngü yaparken anahtar eklemeyin veya çıkarmayın çünkü Python bir RuntimeError değerini yükseltir. Bunu yapmanız gerekiyorsa list(user) üzerinden döngü yapın.

İpucu: Bir sözlükteki in denetimi hızlıdır, ancak "Pune" in user.values()‘ün her değeri taraması gerekir. Bunu büyük verilerle sık sık yaparsanız, sözlüğünüz yanlış yönlendirilmiş olabilir.

Sözlük yöntemleri hile sayfası

Yöntem Ne işe yarar
get(k, varsayılan) Bir değer döndürür veya anahtar eksikse varsayılan değeri döndürür
keys() Tuşların görünümünü döndürür
values() Değerlerin görünümünü döndürür
items() Anahtar ve değer çiftlerinin görünümünü döndürür
update(other) Başka bir sözlüğe ekleme veya üzerine yazma
pop(k, varsayılan) Bir anahtarı kaldırır ve değerini döndürür
popitem() Son eklenen çifti kaldırır ve döndürür
varsayılan ayarı(k, v) Değeri döndürür ve anahtar eksikse önce v’yi ekler
copy() Sığ bir kopya döndürür
clear() Her şeyi kaldırır
dict.fromkeys(anahtarlar, v) Anahtar listesinden bir sözlük oluşturur

Sözlükleri birleştir

Yaygın bir ihtiyaç, kullanıcı ayarlarını varsayılanların üstüne uygulamaktır. Anahtarlar çarpıştığında sağ taraf kazanır:

defaults = {"theme": "light", "lang": "en"}
saved = {"theme": "dark"}

defaults | saved
{**defaults, **saved}

# Both give: {'theme': 'dark', 'lang': 'en'}

| operatörü Python 3.9 veya daha yeni bir sürüme ihtiyaç duyarken, ** sürümü de eski sürümlerde çalışır. Her ikisi de yeni bir sözlük oluşturur. Buna karşılık, defaults.update(saved) ve defaults |= saved, defaults‘i yerinde değiştirir.

Anlamalar ve sıralama

Sözlük kavramaları, tıpkı liste anlamalarının listeler için yaptığı gibi, okunabilir tek bir satırda yeni bir sözlük oluşturur:

prices = {"pen": 10, "book": 250, "bag": 900}

{k: v for k, v in prices.items() if v > 100}
# {'book': 250, 'bag': 900}

Değere göre sıralamak için sorted()‘ye bir key işlevi iletin. En büyük değere sahip anahtarı bulmak için max() kullanın:

sorted(prices.items(), key=lambda item: item[1], reverse=True)
# [('bag', 900), ('book', 250), ('pen', 10)]

max(prices, key=prices.get)
# 'bag'

Bir sözlüğün sort() yöntemi yoktur ve sorted() çiftlerin bir listesini döndürür. Sözlüğün bu sırayla olmasını istiyorsanız sonucu dict()‘e sarın.

Sayma ve gruplama kalıpları

Sürekli olarak iki görev ortaya çıkıyor. Bunlardan ilki, varsayılan sıfır değeriyle get() kullanarak yapabileceğiniz sayma işlemidir:

words = "to be or not to be".split()

counts = {}
for word in words:
    counts[word] = counts.get(word, 0) + 1

print(counts)
# {'to': 2, 'be': 2, 'or': 1, 'not': 1}

Standart kütüphane bunu Counter ile daha da kısaltır:

from collections import Counter

Counter(words).most_common(2)
# [('to', 2), ('be', 2)]

İkincisi gruplamadır ve defaultdict burada idealdir çünkü sizin için eksik değeri yaratır:

from collections import defaultdict

orders = [("Asha", 1200), ("Ben", 300), ("Asha", 800)]

by_customer = defaultdict(list)
for name, total in orders:
    by_customer[name].append(total)

print(dict(by_customer))
# {'Asha': [1200, 800], 'Ben': [300]}

Bu olmasaydı, eklemeden önce her anahtarın var olup olmadığını kontrol etmeniz gerekirdi. Aynı modeller API verilerini veya günlük satırlarını toplamak için de işe yarar. Bir sözlük boş olduğunda veya bir anahtar eksik olduğunda, Python istisna işleme kılavuzumuzda ortaya çıkan KeyError ile nasıl başa çıkılacağı gösterilmektedir.

İç içe geçmiş veriler ve kopyalama tuzağı

JSON doğrudan iç içe geçmiş sözlüklere ve listelere eşlenir, böylece genellikle anahtarları zincirlersiniz. Zincirleme get(), bir seviyenin eksik olabileceği durumlarda bunu güvende tutar:

response = {"user": {"profile": {"city": "Pune"}}}

response["user"]["profile"]["city"]               # 'Pune'
response.get("user", {}).get("settings", {}).get("theme")   # None

İç içe geçmiş verileri kopyalarken dikkatli olun. copy() yalnızca en üst düzeyi kopyalar, böylece iç sözlükler orijinalle paylaşılmaya devam eder:

settings = {"db": {"host": "localhost"}}

shallow = settings.copy()
shallow["db"]["host"] = "prod"

print(settings["db"]["host"])
# prod

Kopyayı değiştirmek orijinali değiştirdi ve bu kötü bir hata olabilir. Tamamen bağımsız bir kopya elde etmek için copy.deepcopy(settings)‘i kullanın.

Sözlük anahtarı ne olabilir?

Anahtarlar hash edilebilir olmalıdır, bu da genellikle değişmez anlamına gelir. Değişmez değerlerin dizeleri, sayıları ve dizilerinin tümü çalışır. Listeler ve sözlükler şunları yapmaz:

{["a"]: 1}

# TypeError: unhashable type: 'list'

Bunun nedeni, bir anahtarın karmasının, değerinin nerede saklanacağına karar vermesidir. Eğer bir anahtar değişebilseydi Python artık onu bulamazdı. Bileşik anahtara ihtiyacınız varsa {("Pune", 2026): 120} gibi bir tanımlama grubu kullanın.

Yaygın hatalar

  • İsteğe bağlı tuşlarda köşeli parantez kullanma. Bir anahtarın bulunmadığı durumlarda get()‘ye ulaşın.
  • get()‘nin anahtarın var olduğu anlamına geldiğini varsayarsak. None, eksik veya depolanmış bir None anlamına gelebilir. Fark önemli olduğunda in‘i kullanın.
  • Değişken bir varsayılan kullanma. dict.fromkeys(names, []) her tuşa aynı listeyi verir. Bunun yerine bir anlayış kullanın.
  • Yineleme sırasında boyut değiştiriliyor. Anahtarların bir kopyası üzerinde döngü yapın.
  • Sabit, bilinen alanlar için dict kullanma. A dataclass daha net olabilir ve alan adlarındaki yazım hatalarını yakalar.

Son sözler

Sözlükler biraz pratik yapmayı ödüllendirir. İsteğe bağlı tuşlar için get()‘i, döngüler için items()‘yi ve en yaygın iki iş için Counter ve defaultdict‘ü unutmayın. Alıştırma yapmak için küçük bir JSON dosyası alın ve kayıtlarını saymak ve gruplandırmak için kod yazın. Dilde yeniyseniz, Yeni başlayanlar için Python eğitimimiz ile başlayın.

Sık sorulan sorular

Python’da sözlük nedir?

Sözlük, anahtar ve değer çiftlerini saklayan yerleşik bir koleksiyondur. Bir değeri, büyük miktarda veriyle bile hızlı olan anahtarına göre ararsınız.

Python sözlükleri sipariş edildi mi?

Evet. Python 3.7’den beri sözlüklerin anahtarların eklenme sırasını koruyacağı garanti edilmektedir. Mevcut bir anahtarı güncellemek onun konumunu değiştirmez.

get() ve köşeli parantez arasındaki fark nedir?

Bir anahtar eksik olduğunda köşeli parantezler KeyError değerini yükseltir. get() işlevi Hiçbiri’ni veya sizin sağladığınız bir varsayılan değeri döndürür, dolayısıyla isteğe bağlı tuşlara uygundur.

Bir sözlüğün yinelenen anahtarları olabilir mi?

Hayır. Her anahtar benzersizdir. Mevcut bir anahtara atama, onun değerini değiştirir ve bir değişmez değer bir anahtarı tekrarlarsa son değer kazanır.

Python’da iki sözlüğü nasıl birleştiririm?

| Python 3.9 veya sonraki sürümlerde b veya daha eski sürümlerde {**a, **b}. Her ikisi de yeni bir sözlük oluşturur ve tuşlar çatıştığında b’den gelen değerler kazanır.

Öğrenmeye devam et

Stack Quora ile çalışın

Test, WordPress veya SEO konusunda yardıma mı ihtiyacınız var?

Ekiplerin daha iyi yazılımlar sunmasına ve sitelerini büyütmesine yardımcı oluyoruz. Bize ne üzerinde çalıştığınızı söyleyin, biz de bir sonraki adım için net bir öneride bulunalım.

Okumaya devam et

Daha fazla kılavuz test, yapay zeka ve modern geliştirme

Bu makaleyi beğendiniz mi? Bir konu seçin ve doğrudan en yeni eğitimlerimize geçin.

Yapay zekâ

Yapay Zeka Halüsinasyonları Açıklandı: Dil Modelleri Neden İşleri Düzeltiyor ve Nasıl Azaltılabilir?

Yapay zeka halüsinasyonları açıkladı: ne olduklarını, dil modellerinin bunları neden ürettiğini, yaygın türlerini, temellendirme ve yönlendirmelerle…

Makaleyi okuyun →
DevOps

Açıklanan Ortam Değişkenleri: .env Dosyaları, Sırlar ve Yapılandırma Doğru Yapıldı

Çalıştırdığımız Python örnekleriyle açıklanan ortam değişkenleri: bunları okumak ve ayarlamak, neden her değerin bir dize olduğu, .env dosyaları, sü…

Makaleyi okuyun →
Yazılım geliştirme

API Hız Sınırlamasının Açıklaması: Algoritmalar, Başlıklar ve 429 Hatalarının Ele Alınması

API hızı sınırlaması, çalıştırdığımız bir simülasyonla açıklanmıştır: belirteç kümesi, sabit pencere, kayan pencere, 429 yanıt, hız sınırı başlıklar…

Makaleyi okuyun →
Test otomasyonu

Python'da alay etme: Unittest.mock, patch ve Testleri Yalan Yapan Hatalar

Unittest.mock ile Python'da alay etme, test edildi: Sahte ve dönüş_değeri, yan_etki, bir adın kullanıldığı yerde yama uygulama, spesifikasyon ve oto…

Makaleyi okuyun →
Yazılım testi

Kod Kapsamının Açıklaması: Hat ve Şube Kapsamı ve %100'ün Gerçek Anlamı

Kod kapsamı gerçek bir kapsama.py çalışmasıyla açıklanmıştır: hat, şube ve durum kapsamı, bir raporun okunması, %100 kapsamın neden hâlâ hataları ka…

Makaleyi okuyun →
Veritabanları ve SQL

SQL'de DELETE vs TRUNCATE vs DROP: Farklılıklar, Geri Alma ve Her Biri Ne Zaman Kullanılmalı

DELETE vs TRUNCATE vs DROP test edilmiş SQL ile açıklandı: her birinin neyi kaldırdığı, geri aldığı, tetiklediği, kimlik sıfırlaması, hızı ve Postgr…

Makaleyi okuyun →
Veritabanları ve SQL

Açıklanan SQL Görünümleri: Örneklerle Tuzakları Oluşturun, Kullanın ve Önleyin

Çalıştırdığımız sorgularla açıklanan SQL görünümleri: görünüm oluşturma, canlı sonuçlar, sütunları gizleme, performans, güncellenebilir ve gerçekleş…

Makaleyi okuyun →
Yazılım geliştirme

TypeScript Arayüzü ve Tür: Gerçek Farklılıklar, Derleyiciyle Test Edildi

TypeScript arayüzü ve türü, gerçek derleyiciyle kontrol edildi: her ikisinin de yapabileceği, yalnızca birinin yapabileceği, bildirim birleştirme, g…

Makaleyi okuyun →
Yazılım geliştirme

Python *args ve **kwargs'ın Açıklaması: Açık Örneklerle Esnek Fonksiyonlar

Python *args ve **kwargs çalıştırdığımız kodla açıklanmıştır: paketleme ve paketten çıkarma, parametre sırası, yalnızca anahtar kelime ve yalnızca k…

Makaleyi okuyun →
Yazılım geliştirme

Python Lambda İşlevleri: Söz Dizimi, Gerçek Kullanımlar ve Ne Zaman Kullanılmaması Gerektiği

Çalıştırdığımız kodla açıklanan Python lambda işlevleri: sözdizimi, anahtarla sıralama, harita ve filtre, kapatmalar, geç bağlama tuzağı ve normal b…

Makaleyi okuyun →
Yapay zekâ

Yapay Zeka Ajanları Nelerdir? Çalıştırabileceğiniz Basit Bir Aracı Döngüsüyle Nasıl Çalışırlar?

Yapay zeka ajanları nedir? Aracı döngüsüne, araçlara, belleğe ve korkuluklara ilişkin basit bir kılavuz, çalıştırdığımız küçük bir Python döngüsü, g…

Makaleyi okuyun →
DevOps

İzleme ve Gözlemlenebilirlik: Günlükler, Metrikler ve İzlerle Gerçek Fark

İzleme ve gözlemlenebilirliğin açıklanması: bilinen ve bilinmeyen arızalar, günlükler, ölçümler ve izler, ödeme olayının gözden geçirilmesi, altın s…

Makaleyi okuyun →
DevOps

Docker Birimleri ve Bağlama Bağlantıları: Konteyner Verilerini Doğru Şekilde Kalıcılaştırın

Docker birimleri ile bağlama bağlamaları arasındaki karşılaştırma açıklandı: kapsayıcı verilerinin neden kaybolduğu, adlandırılmış birimler, bağlama…

Makaleyi okuyun →
Test otomasyonu

TDD ve BDD: Temel Farklılıklar, Her İki Şekilde Geliştirilmiş Bir Özellik ve Her Birinin Ne Zaman Kullanılacağı

TDD ve BDD, her iki yönde de oluşturulmuş bir indirim özelliğiyle açıklandı: çalıştırdığımız kodla kırmızı-yeşil-refactor, Verilen-Ne Zaman-O Zaman …

Makaleyi okuyun →
Yazılım testi

Kullanıcı Kabul Testi (UAT): Süreç, Kontrol Listesi ve Gerçek Örnekler

Kullanıcı kabul testi açıklandı: bunu kimin yürüttüğü, QA'dan farkı, yedi adımlı bir süreç, bir UAT test senaryosu şablonu, bir kontrol listesi, otu…

Makaleyi okuyun →
Veritabanları ve SQL

Açıklanan SQL NULL Değerleri: IS NULL, COALESCE, NULLIF ve Kaçınılması Gereken Tuzaklar

SQL NULL değerleri, çalıştırdığımız sorgularla açıklandı: üç değerli mantık, IS NULL, COALESCE, NULLIF, toplamaların, birleştirmelerin ve sıralamanı…

Makaleyi okuyun →
Veritabanları ve SQL

SQL CASE WHEN İfadesi: Sözdizimi, Gerçek Örnekler ve Yaygın Hatalar

SQL CASE WHEN çalıştırdığımız sorgularla açıkladı: basit ve aranmış formlar, koşul sırası, SUM'lu pivotlar, COUNT hileleri, özel sıralama, güncellem…

Makaleyi okuyun →
Yazılım geliştirme

JWT Nedir? JSON Web Belirteçleri Bir Çalışma Örneğiyle Açıklanıyor

JWT nedir? JSON Web Tokens açıkladı: üç bölüm, çalıştırdığımız kodda oluşturulan ve üzerinde değişiklik yapılan bir token, JWT ile oturumlar, depola…

Makaleyi okuyun →
Yazılım geliştirme

JavaScript Olay Döngüsü Açıklaması: Örneklerle Çağrı Yığını, Mikro Görevler ve Zamanlayıcılar

JavaScript olay döngüsü çalıştırdığımız kodla açıklandı: çağrı yığını, görev ve mikro görev kuyrukları, setTimeout 0'ın neden anında olmadığı, engel…

Makaleyi okuyun →
Yazılım geliştirme

Python Jeneratörleri ve Verim Açıklaması: Gerçek Örneklerle Bellekten Tasarruf Edin

Python üreteçleri ve verim, çalıştırdığımız kodla açıklandı: nasıl duraklatılır ve devam ettirilir, ölçülen bellek tasarrufları, işlem hatları, sons…

Makaleyi okuyun →
Yapay zekâ

Gömmeler Nelerdir? Vektörler ve Kosinüs Benzerliği Basitçe Açıklandı

Gömmeler nedir? Vektörler, kosinüs benzerliği ve anlamsal aramaya ilişkin sade dilli bir kılavuz; çalıştırdığımız küçük bir örnek, yaygın kullanımla…

Makaleyi okuyun →
DevOps

Mavi-Yeşil ve Kanarya Konuşlandırılması: Farklılıklar, Takaslar ve Nasıl Seçilir

Mavi-yeşil ve kanarya konuşlandırması açıklandı: her birinin nasıl çalıştığı, maliyet, risk ve geri alma, test ettiğimiz istikrarlı kullanıcı grubu,…

Makaleyi okuyun →
Test otomasyonu

Kesintili Testler: Bunların Sebepleri ve Nasıl Düzeltileceği

Yaptığımız demolarla açıklanan hatalı testler: ana nedenler, birinin nasıl doğrulanacağı ve teşhis edileceği, zamanlama için uygun düzeltmeler, payl…

Makaleyi okuyun →
Yazılım testi

Yük Testi ve Stres Testi: Farklılıklar, Metrikler ve k6 Örnekleri

Yük testi ve stres testinin açıklaması: her birinin neyi kanıtladığı, ani yükselme ve soğuma testleri, önemli ölçümler, ortalamaların neden yanıltıc…

Makaleyi okuyun →
Yazılım testi

Test Senaryosu ve Test Senaryosu: Temel Farklılıklar, Örnekler ve Her Biri Ne Zaman Kullanılmalı?

Test senaryosu ve test senaryosunun açıklaması: net tanımlar, yan yana tablo, senaryolardan vakalara, şablonlara ve her birinin ne zaman kullanılaca…

Makaleyi okuyun →
Veritabanları ve SQL

SQL Sorgu Optimizasyonu: Zamanlamalarla Yürütme Planlarını Okuyun ve Yavaş Sorguları Düzeltin

SQL sorgu optimizasyonu bir milyon satırda test edilmiştir: yürütme planlarını okuyun, doğru dizinleri ekleyin, değiştirilemeyen filtreleri düzeltin…

Makaleyi okuyun →
Veritabanları ve SQL

SQL UNION ve UNION ALL: Farklılıklar, Örnekler ve Test Edilmiş Performans

SQL UNION ve UNION ALL, yürüttüğümüz sorgularla açıklandı: kopyalar, her ikisinin de takip ettiği kurallar, gerçek bir veri hatası, ölçülen performa…

Makaleyi okuyun →
Yazılım geliştirme

JavaScript Fetch API Eğitimi: GET, POST, Hata İşleme ve Zaman Aşımları

Yerel bir sunucuya karşı test edilen bir JavaScript Fetch API öğreticisi: GET ve POST, 404'ün neden atmadığı, yeniden kullanılabilir bir yardımcı, s…

Makaleyi okuyun →
Yazılım geliştirme

Python Dosya İşleme: Örneklerle Okuma, Yazma, CSV, JSON ve pathlib

Python dosya işleme, çalıştırdığımız kodla açıklanmıştır: açık modlar, büyük dosyaları okuma, CSV, JSON, pathlib, ikili dosyalar, güvenli yazma, hat…

Makaleyi okuyun →
Yazılım geliştirme

Python Sınıfları ve Nesneleri: Gerçek Örneklerle OOP Eğitimi

Çalıştırdığımız kodla açıklanan Python sınıfları ve nesneleri: __init__, yöntemler, sınıf ve örnek nitelikleri, kalıtım, özellikler, dunder yöntemle…

Makaleyi okuyun →
Yapay zekâ

Büyük Dil Modeli Nedir? Yüksek Lisans'ların Nasıl Çalıştığı, Abartmadan Açıklanıyor

Büyük dil modeli nedir? LLM'ler sade bir dille açıklandı: belirteçler, yerleştirmeler, dikkat, eğitim, sıcaklık ve bağlam pencereleri, küçük bir son…

Makaleyi okuyun →
DevOps

Yeni Başlayanlar İçin Linux Komutları: Örneklerle Temel Terminal Kılavuzu

Yeni başlayanlar için göreve göre gruplandırılmış Linux komutları: pratik bir günlük analizi örneğiyle gezinme, dosyalar, günlükleri görüntüleme, gr…

Makaleyi okuyun →
Test otomasyonu

Selenyum ve Oyun Yazarı: Temel Farklılıklar, Karşılaştırılan Kod ve Hangisinin Seçileceği

Selenium ve Playwright karşılaştırması: mimari, bekleme, tarayıcı ve dil desteği, hata ayıklama, her iki araçta da aynı test, geçiş tavsiyesi ve nas…

Makaleyi okuyun →
Yazılım testi

Eşdeğerlik Bölümleme: Test Tasarımı Tekniğinin Çalışılmış Örneklerle Açıklanması

Eşdeğerlik bölümlemenin açıklaması: geçerli ve geçersiz bölümlerin nasıl bulunacağı, yaşlara yönelik çalışılmış örnekler, şifreler ve kuponlar, yürü…

Makaleyi okuyun →
Yazılım testi

Yazılım Testinde Şiddet ve Öncelik: Farklılıklar, Matris ve Gerçek Örnekler

Yazılım testinde önem ve önceliğin açıklanması: net tanımlar, örnekler içeren dört yönlü bir matris, seviye ölçekleri, her birini kimin belirlediği …

Makaleyi okuyun →
Veritabanları ve SQL

SQL Alt Sorguları Eğitimi: Türler, İlişkili Alt Sorgular ve Örneklerle EXISTS

Çalıştırdığımız sorguları içeren bir SQL alt sorgu eğitimi: skaler, IN, FROM ve SELECT alt sorguları, ilişkili alt sorgular, EXISTS, NOT IN NULL tuz…

Makaleyi okuyun →
Veritabanları ve SQL

SQL İşlemleri ve ACID Açıklaması: COMMIT, ROLLBACK ve İzolasyon Seviyeleri

SQL işlemleri ve ACID, yürüttüğümüz bir banka transferiyle açıklandı: COMMIT, ROLLBACK, kayıt noktaları, kilitler, izolasyon seviyeleri, kirli okuma…

Makaleyi okuyun →
Yazılım geliştirme

Git Komutları Hile Sayfası: Gerçekte Kullandığınız Komutlar, Örneklerle

Git komutları göreve göre gruplandırılmış kısa bilgiler sayfası: kurulum, aşamalandırma, dallar, uzaktan kumandalar, saklama, geçmiş ve gerçek bir d…

Makaleyi okuyun →
Yazılım geliştirme

JavaScript Vaatlerinin Açıklaması: ardından, catch, Promise.all ve Yaygın Hatalar

Çalıştırdığımız kodla açıklanan JavaScript vaatleri: durumlar, ardından ve yakalama zincirleri, hata yönetimi, Promise.all, allSettled, yarış ve her…

Makaleyi okuyun →
Yazılım geliştirme

Python Sözlüğü Eğitimi: Yöntemler, Örnekler ve Ortak Kalıplar

Çalıştırdığımız kodları içeren bir Python sözlüğü eğitimi: dikteler oluşturma, okuma ve güncelleme, temel yöntemler, birleştirme, kavramalar, sayma …

Makaleyi okuyun →
Yapay zekâ

RAG Nedir? Geri Almayla Artırılmış Üretim Bir Çalışma Örneğiyle Açıklanıyor

RAG nedir? Almayla artırılmış oluşturma adım adım açıklanmıştır: indeksleme, parçalama, yerleştirmeler, alma, çalışan küçük bir Python örneği, değer…

Makaleyi okuyun →
DevOps

Yeni Başlayanlar İçin Terraform Eğitimi: İlk Dosyadan Modüllere Kod Olarak Altyapı

Yeni başlayanlar için bir Terraform eğitimi: Bulut hesabı olmadan başlayın, başlatmayı öğrenin, planlayın ve uygulayın, ardından değişkenler, çıktıl…

Makaleyi okuyun →
DevOps

Docker ve Kubernetes: Temel Farklılıklar, Birlikte Nasıl Çalıştıkları ve İhtiyacınız Olanlar

Docker ve Kubernetes şöyle açıkladı: Her birinin ne yaptığı, her ikisinde de aynı uygulamanın çalıştırılması, Docker Compose ve Swarm'ın karşılaştır…

Makaleyi okuyun →
Test otomasyonu

Yeni Başlayanlar İçin Pytest Eğitimi: Fikstürler, Parametrelendirme ve Gerçek Örnekler

Yeni başlayanlar için pytest 9.2'de yürüttüğümüz testleri içeren bir pytest öğreticisi: iddialar, fikstürler, parametrelendirme, yarışma, işaretleyi…

Makaleyi okuyun →
Yazılım testi

Yazılım Test Yaşam Döngüsü (STLC): 6 Aşama, Giriş ve Çıkış Kriterleri, Örnek

Yazılım testi yaşam döngüsü şunları açıkladı: giriş ve çıkış kriterleri, teslimatlar, çalışılmış bir oturum açma özelliği örneği, Agile'da STLC ve S…

Makaleyi okuyun →
Yazılım geliştirme

Git merge vs rebase: farklar, örnekler ve hangisi ne zaman kullanılır

Git merge vs rebase; gerçek log çıktısı, karşılaştırma tablosu, rebase'in altın kuralı ve güvenli bir ekip iş akışıyla anlatılıyor.

Makaleyi okuyun →
Yazılım geliştirme

Python Liste Üreteci (List Comprehension): Sözdizimi, Örnekler ve Kaçınılacak Durumlar

Python list comprehension anlatımı: sözdizimi, filtreleme, if-else, iç içe döngüler, ölçülmüş süreler ve düz for döngüsünün daha iyi olduğu durumlar.

Makaleyi okuyun →
Veritabanları ve SQL

SQL JOIN Örneklerle Açıklama (Inner, Left, Right, Full)

SQL JOIN'leri örnek tablolar ve sorgularla adım adım öğrenin: INNER, LEFT, RIGHT, FULL, CROSS ve SELF; yaygın hatalar ve performans ipuçları.

Makaleyi okuyun →