Python Nedir?
Python, yüksek seviyeli, yorumlu (interpreter) ve genel amaçlı bir programlama dilidir. Okunabilir sözdizimine verdiği önem, geniş standart kütüphanesi ve "her iş için hazır bir kütüphane var" yaklaşımı sayesinde dünyanın en çok tercih edilen programlama dillerinden biri hâline gelmiştir. Veri bilimi, yapay zekâ, web geliştirme, masaüstü uygulamaları, oyun yerelleştirmesi ve otomasyon scriptleri Python ile rahatça yapılabilir. Web tarafında neler üretilebileceğini görmek isterseniz Python ile Web Sitesi Yapma Rehberi yazımıza da göz atın.
Dilin felsefesi, "Zen of Python" (PEP 20) belgesinde özetlenir: "Güzel olan çirkinden iyidir", "Basit olan karmaşıktan iyidir". Python bu ilke doğrultusunda gereksiz karmaşıklıktan uzak durur, tekrar eden kodu azaltır ve kaynağa bakan kişinin ne yaptığını birkaç saniyede anlamasını sağlar. İşte bu okunabilirlik, Python'u hem yeni başlayanlar hem de kurumsal projelerde çalışan deneyimli ekipler için ortak bir dil hâline getirmiştir.
Python'ın Tarihçesi
Python, Hollandalı programcı Guido van Rossum tarafından 1989 yılında, Noel tatili boyunca boş vakit geçirmek için yazılmaya başlandı. Dilin ilk resmi sürümü olan 0.9.0, 1991 yılının başında yayımlandı. İsim, Rossum'un sevdiği Monty Python's Flying Circus komedi grubundan gelir; Python'un logosundaki iki yılan da bu espriyi yansıtır.
- 1991 — Python 0.9.0: Sınıflar, işlevler, exception'lar, temel veri tipleri ve sözlükler ile ilk sürüm.
- 2000 — Python 2.0: List comprehension, döngüsel referansları algılayan gelişmiş çöp toplama mekanizması ve Unicode desteği.
- 2008 — Python 3.0: Geri uyumluluk kıran büyük sürüm.
printfonksiyon hâline geldi, metin ve bayt ayrımı netleşti, kod temizlendi. - 2020 — Python 2'nin sonu: 1 Ocak 2020'de Python 2'nin resmi bakımı sona erdi; tüm topluluk Python 3'e taşındı.
- 2024–2026 — Modern Python: 3.12, 3.13 ve 3.14 sürümleriyle daha hızlı çalışma zamanı, çok daha anlaşılır hata mesajları, deneysel "no-GIL" (free-threaded) mod ve derleyici (JIT) çalışmaları.
Bugün Python; TIOBE endeksinde, Stack Overflow geliştirici anketlerinde ve RedMonk sıralamasında ilk sıralarda yer alıyor. Dilin akademideki güçlü konumunu ve neden bu kadar çok tercih edildiğini ABD üniversitelerinde en çok öğretilen dil: Python yazımızda ayrıntılı olarak ele aldık.
Python'un Temel Özellikleri
- Okunabilir sözdizimi: Bloklar süslü parantezle değil, girinti (indentation) ile belirlenir. Bu zorunluluk, kodun baştan düzenli yazılmasını sağlar.
- Dinamik tiplendirme: Değişken tipini bildirmek gerekmez;
yas = 30yeterlidir, tip çalışma anında belirlenir. - Yorumlu çalışma: Kod derlenmeden doğrudan çalışır; hızlı prototipleme ve deneme yapmayı kolaylaştırır.
- Çok paradigmalı: Nesne yönelimli, işlevsel ve prosedürel programlamayı aynı anda destekler.
- "Batteries included" standart kütüphanesi: Dosya işlemleri, tarih/saat, JSON, regex, HTTP, e-posta ve test araçları hazır gelir.
- Çapraz platform: Windows, macOS ve Linux'ta aynı kod çalışır.
- Devasa ekosistem: PyPI deposunda 500.000'den fazla paket tek komutla kurulur:
pip install pandas - Çöp toplama: Bellek yönetimi otomatiktir; geliştirici
freegibi manuel işlemlerle uğraşmaz.
Python Sözdizimi Örnekleri
En basit örnek her dilde olduğu gibi merhaba dünyadır:
print("Merhaba, TechWave!")
Değişkenler ve f-string ile metin birleştirme şöyle çalışır:
# Tip bildirimi gerekmez
isim = "Ada"
yas = 30
ortalama = 88.5
aktif = True
print(f"{isim} {yas} yaşında, ortalama notu: {ortalama}")
Koşullar ve döngüler, girinti yapısı sayesinde görsel olarak çok net okunur:
skorlar = [45, 82, 91, 67, 100]
for skor in skorlar:
if skor >= 90:
durum = "harika"
elif skor >= 60:
durum = "geçti"
else:
durum = "kaldı"
print(f"Skor: {skor} -> {durum}")
Fonksiyonlar, varsayılan parametreler ve liste gösterimi (list comprehension) Python'un en sevilen kalıplarıdır:
def gecenler(skorlar, limit=60):
"""Limiti aşan skorları döndürür."""
return [s for s in skorlar if s >= limit]
sonuc = gecenler(skorlar, 80)
print(sonuc) # [82, 91, 100]
Nesne yönelimli programlama ise sınıf tanımlamakla başlar:
class Ogrenci:
def __init__(self, ad, notlar):
self.ad = ad
self.notlar = notlar
def ortalama(self):
return sum(self.notlar) / len(self.notlar)
ada = Ogrenci("Ada", [90, 85, 92])
print(f"{ada.ad}: {ada.ortalama():.1f}")
Python Nerelerde Kullanılır?
Web Geliştirme
Django, Flask ve FastAPI çerçeveleriyle REST API'ler, e-ticaret siteleri, içerik yönetim sistemleri ve yüksek trafikli servisler geliştirilir. Instagram, Spotify ve Pinterest gibi dev platformların arkasında Python'un izleri bulunur.
Veri Bilimi ve Veri Analizi
pandas, NumPy, Matplotlib, Seaborn ve Jupyter Notebook kombinasyonu, ham veriyi analiz edilebilir hâle getirmenin standart yoludur. Şirket raporlamasından finansal modellemeye kadar her ölçekte kullanılır.
Yapay Zekâ ve Makine Öğrenmesi
TensorFlow, PyTorch, scikit-learn ve Hugging Face kütüphaneleri Python üzerinden çalışır. 2026 yılında büyük dil modelleri (LLM), görüntü ve video üretim araçları ile yapay zekâ ajanlarının geliştirilmesinde de ilk tercih yine Python'dur. Konuya sıfırdan başlamak için Yapay Zeka Nedir? rehberimize, üretken yapay zekâ araçlarını karşılaştırmak için yapay zeka ile kod yazma araçları yazımıza göz atabilirsiniz.
Otomasyon ve Scripting
Toplu dosya yeniden adlandırma, Excel tablolarını otomatik doldurma, web scraping (BeautifulSoup, Selenium), e-posta gönderimi, klasör düzenleme ve yedekleme scriptleri Python'un en hızlı geri dönüş aldığı alandır. On satırlık bir script, günde bir saat süren tekrarlı işi bitirebilir.
Bilimsel Hesaplama, IoT ve Siber Güvenlik
SciPy ve SymPy ile mühendislik hesapları, MicroPython ve CircuitPython ile mikro denetleyici (ESP32, Raspberry Pi) projeleri, araçları ise siber güvenlik tarafında tarama ve otomasyon scriptleri için sıklıkla Python tercih edilir. Kişisel veri güvenliğine dair temel bilgiler için Siber Güvenlik 101 yazımızı da okuyabilirsiniz.
Python Kullanım Alanları Tablosu
| Alan | Öne Çıkan Kütüphaneler / Araçlar | Örnek Proje |
|---|---|---|
| Web geliştirme | Django, Flask, FastAPI | REST API, e-ticaret paneli |
| Veri bilimi | pandas, NumPy, Matplotlib | Satış raporu otomasyonu |
| Yapay zekâ | PyTorch, TensorFlow, scikit-learn | Duygu analizi modeli |
| Otomasyon | os, re, Selenium, BeautifulSoup | Toplu dosya dönüştürme |
| Masaüstü / oyun | Tkinter, PyQt, Ren'Py | Görsel roman çevirisi |
| Bilimsel hesaplama | SciPy, SymPy, Matplotlib | Simülasyon ve modelleme |
Örneklemek gerekirse Python yalnızca web ve veri işlerinde değil, oyun dünyasında da karşınıza çıkar: Ren'Py motoruyla geliştirilen görsel romanlar için kullanılan otomatik çeviri araçları da Python ile yazılmıştır. Süreci adım adım Ren'Py oyun çevirisi rehberimizde anlattık.
Python'un Avantajları ve Dezavantajları
Avantajları: Öğrenme eğrisi çok yumuşaktır; okunabilirliği yüksektir; kütüphane ekosistemi neredeyse sınırsızdır; topluluk desteği geniş ve ücretsizdir; prototipten üretime aynı dille geçiş mümkündür; yapay zekâ ve veri biliminde sektör standardıdır.
Dezavantajları: Yorumlu ve dinamik tipli bir dil olduğu için saf Python, C veya Rust kadar hızlı değildir; mobil uygulama geliştirmede (iOS/Android) yaygın bir seçenek değildir; çok kullanıcılı, çok iş parçacıklı (multi-threaded) uygulamalarda GIL kısıtı hissedilir; çalışma zamanı bağımlılıkları (virtualenv / poetry) doğru yönetilmezse proje şişebilir. Bu sorunlar, Cython, Rust eklentileri, asyncio ve paket yönetim araçlarıyla pratikte aşılabilir.
Python vs Diğer Programlama Dilleri
| Dil | Öne Çıkan Yön | Python'a Göre Avantajı | Ne Zaman Tercih Edilir? |
|---|---|---|---|
| Python | Okunabilirlik, ekosistem | Öğrenmesi en kolay dil | Veri, AI, otomasyon, backend |
| JavaScript | Tarayıcıda çalışma | Frontend'de zorunlu, Node.js ile tam yığın | Web arayüzü ve etkileşim |
| Java | Kurumsal, statik tip | Büyük ekiplerde tip güvenliği, JVM hızı | Bankacılık, Android, büyük sistemler |
| C / C++ | Donanıma yakınlık | Performans, düşük seviye kontrol | Oyun motoru, gömülü sistemler |
| Go | Eşzamanlılık, sadelik | Yüksek eşzamanlı, hızlı derleme | Bulut servisleri, altyapı araçları |
| Rust | Bellek güvenliği | Performans + çökme garantisi | Sistem programlama, kritik altyapı |
Kısacası Python, "her şeyin en hızlısı" olmak yerine "her işin yeterince iyisi" olmak için tasarlanmış bir dildir. Performans kritik noktalarda C/C++ veya Rust'a, arayüz tarafında JavaScript'e; işin merkezindeki mantığa ise Python'a yönelmek, 2026'da en yaygın ve doğru mimari tercihlerden biridir.
Python Öğrenme Yolu: Adım Adım
- Ortamı kurun: python.org üzerinden en güncel kararlı sürümü indirin ve "Add to PATH" seçeneğini işaretleyin. Kontrol için terminalde
python --versionyazın. - Editör seçin: Visual Studio Code + Python ve Pylance uzantıları, yeni başlayanlar için en dengeli seçimdir. Alternatif olarak PyCharm Community veya IDLE kullanılabilir.
- Temelleri öğrenin: Değişkenler, veri tipleri, koşullar (
if), döngüler (for,while), listeler, sözlükler ve fonksiyonlar. - Küçük projeler yapın: Sayı tahmin oyunu, harcamalarınızdaki Excel okuyucu, YouTube indirme scripti gibi somut işler öğrenmeyi hızlandırır.
- Paket yönetimini öğrenin: Sanal ortam (
venv),pipverequirements.txtkullanımı. - Bir alana yönelin: Veri bilimi, web veya yapay zekâ hangisi size yakınsa o alanın kütüphanelerini derinlemesine öğrenin.
- Proje tabanlı ilerleyin: Özgün bir projeyi GitHub'a taşıyın; portföy, CV'den daha etkilidir.
- İleri seviyeye geçin: Tip ipuçları, test yazımı, tasarım kalıpları ve asenkron programlama.
İleri Seviye Python
Temel kavramları oturttuktan sonra sıradaki duraklar şunlardır: nesne yönelimli programlama (kalıtım, soyut sınıflar, magic methodlar), dekoratörler, jeneratörler ve yield, eşzamanlılık (asyncio, thread ve process farkları), tip ipuçları (typing modülü ve mypy), test yazımı (pytest), tasarım kalıpları ve performans optimizasyonu (profil çıkarma, gerekirse Cython veya Rust köprüsü). Bunların tamamı, gerçek iş projelerinde kodunuzu "çalışan kod" olmaktan çıkarıp "bakılabilir sistem" hâline getirir.
Python Topluluğu ve Kaynaklar
Python'un en büyük güçlerinden biri yardımsever ve devasa topluluğudur. Stack Overflow, Reddit'te r/learnpython, GitHub, Real Python, Python resmi dokümantasyonu ve her yıl düzenlenen PyCon konferansları, öğrenme sürecinizde baş vurabileceğiniz kaynaklardır. Türkiye'de de Python toplulukları ve kampüs etkinlikleri her yıl büyüyor. Yeni nesilin kodlama öğrenmesi için Kodris platform incelememiz de ilginizi çekebilir.
Sıkça Sorulan Sorular (SSS)
Python öğrenmek için matematik bilmem gerekir mi?
Hayır. Web geliştirme, otomasyon ve genel amaçlı programlama için matematik şart değildir. İleride veri bilimi veya makine öğrenmesine yönelirseniz lineer cebir, olasılık ve istatistik kavramları işinize yarar; ancak bunlar da öğrenme sürecinde adım adım edinilir.
Python mu, JavaScript mi öğrenmeliyim?
İkisi de değerli, ama hedefinize göre değişir. Web tarayıcısı içinde (frontend) çalışmak istiyorsanız JavaScript zorunludur. Veri, yapay zekâ, bilimsel hesaplama, otomasyon veya hızlı backend tarafında Python daha geniş bir yelpaze sunar. Birden fazla dil bilmek mümkündür; önemli olan ilk bir tanesini gerçekten öğrenmektir.
Python yavaş bir dil midir?
Saf Python, derleme dillerine göre yavaştır; çünkü kod satır satır yorumlanır. Ancak pandas, NumPy ve PyTorch gibi kütüphanelerin içi C/C++ ile yazılmıştır, bu yüzden ağır hesaplamaları beklediğinizden çok daha hızlı yaparlar. Kritik performans gerektiren dar alanlarda ise Cython, Rust eklentileri veya çoklu süreç (multiprocessing) kullanılır.
Python ile ne kadar kazanabilirim?
Python, veri bilimi, yapay zekâ mühendisliği, backend geliştirme ve DevOps alanlarında en yüksek maaşlı dil gruplarından biridir. Kazanç; deneyim, sektör ve ekibe göre değişir, ancak Türkiye'de Python bilen adaylar özellikle fintech, e-ticaret ve yapay zekâ girişimlerinde öne çıkar. Konuyu para tarafına bağlayan yapay zeka ile nasıl para kazanılır yazımız fikir verebilir.
Python 2 hâlâ kullanılıyor mu?
Hayır. Python 2'nin resmi desteği 1 Ocak 2020'de sona erdi. Eski bazı kurumsal sistemlerde karşınıza çıkabilir, ancak yeni bir projeye başlarken daima güncel Python 3 sürümünü kullanmalısınız.
Python öğrenmek ne kadar sürer?
Temel kavramlar ve küçük projeler için düzenli çalışmayla 4–8 hafta genellikle yeterlidir. Bir alanda (veri bilimi veya web) işe yarar düzeyde profesyonel olmak ise 6–12 aylık proje tabanlı bir süreci gerektirir. Süreyi kısaltan şey ders izlemek değil, yazmaktır.
Sonuç
Python, 2026 yılında programlama dünyasının vazgeçilmez bir parçası olmayı sürdürüyor. Okunabilir sözdizimi, devasa kütüphane ekosistemi ve veri bilimi ile yapay zekâ alanındaki hakim konumu sayesinde ister sıfırdan programlamaya başlıyor olun, ister mevcut becerilerinizi geliştirmek istiyorin, her seviyedeki geliştirici için güçlü bir seçim sunar.
Bugün python --version komutunu çalıştırarak başlayın, ilk küçük projenizi yazın ve GitHub'a yükleyin. Bir dil öğrenmenin en garantili yolu, öğrenmeyi ertelemektir. TechWave olarak Python, yapay zekâ ve yazılım gelişmelerini takip etmeye devam edeceğiz.