# Python Öğreticisi

Tüyo

This tutorial is designed for programmers that are new to the Python language, not beginners who are new to programming.

Python öğrenmesi kolay, güçlü bir yazılım dilidir. Verimli üst düzey veri yapılarına ve nesne yönelimli programlamaya basit ama etkili bir yaklaşıma sahiptir. Python’un zarif sözdizimi ve dinamik yazımı, yorumlanmış doğasıyla birlikte, onu çoğu platformda birçok alanda komut dosyası oluşturma ve hızlı uygulama geliştirme için ideal bir dil haline getirir.

The Python interpreter and the extensive standard library are freely available in source or binary form for all major platforms from the Python website, https://www.python.org/, and may be freely distributed. The same site also contains distributions of and pointers to many free third party Python modules, programs and tools, and additional documentation.

Python yorumlayıcısı, C veya C++’da (veya C’den çağrılabilen diğer dillerde) uygulanan yeni işlevler ve veri türleri ile kolayca genişletilebilir. Python, özelleştirilebilir uygulamalar için bir uzantı dili olarak da kullanılabilir.

This tutorial introduces the reader informally to the basic concepts and features of the Python language and system. Be aware that it expects you to have a basic understanding of programming in general. It helps to have a Python interpreter handy for hands-on experience, but all examples are self-contained, so the tutorial can be read off-line as well.

Standart nesnelerin ve modüllerin açıklaması için Python Standart Kütüphanesi ‘e bakınız. Python Dil Referansı dilin daha resmi bir tanımını verir. Uzantıları C veya C++’ta yazmak için Python Yorumlayıcısını Genişletme ve Gömme ve Python/C API reference manual ‘i okuyun. Python’ı derinlemesine kapsayan birkaç kitap da vardır.

Bu öğretici kapsamlı olmaya ve her bir özelliği, hatta yaygın olarak kullanılan her özelliği bile kapsamaya çalışmaz. Bunun yerine, Python’un en dikkat çekici özelliklerinin çoğunu sunar ve size dilin tarzı hakkında iyi bir fikir verecektir. Okuduktan sonra, Python modüllerini ve programlarını okuyabilecek ve yazabileceksiniz ve Python Standart Kütüphanesi bölümünde açıklanan çeşitli Python kütüphanesi modülleri hakkında daha fazla bilgi edinmeye hazır olacaksınız.

Ayrıca Sözlük de göz atmaya değer.

- 1. İştahınızı Kabartma
- 2. Python Yorumlayıcısını Kullanma
  - 2.1. Yorumlayıcıyı Çağırma
    - 2.1.1. Değişken Geçirme
    - 2.1.2. Etkileşimli Mod
  - 2.2. Yorumlayıcı ve Çevresi
    - 2.2.1. Kaynak Kodu Şeması
- 3. Python’a Resmi Olmayan Bir Giriş
  - 3.1. Python’ı Hesap Makinesi Olarak Kullanmak
    - 3.1.1. Sayılar
    - 3.1.2. Metin
    - 3.1.3. Listeler
  - 3.2. Programlamaya Doğru İlk Adımlar
- 4. Daha Fazla Kontrol Akışı Aracı
  - 4.1. `if` İfadeleri
  - 4.2. `for` İfadeleri
  - 4.3. `range()` Fonksiyonu
  - 4.4. `break` and `continue` Statements
  - 4.5. `else` Clauses on Loops
  - 4.6. `pass` İfadeleri
  - 4.7. `pass` İfadeleri
  - 4.8. Fonksiyonların Tanımlanması
  - 4.9. İşlev Tanımlama hakkında daha fazla bilgi
    - 4.9.1. Varsayılan Değişken Değerleri
    - 4.9.2. Anahtar Kelime Değişkenleri
    - 4.9.3. Özel parametreler
      - 4.9.3.1. Konumsal veya Anahtar Kelime Argümanları
      - 4.9.3.2. Yalnızca Konumsal Parametreler
      - 4.9.3.3. Yalnızca Anahtar Sözcük İçeren Değişkenler
      - 4.9.3.4. Fonksiyon Örnekleri
      - 4.9.3.5. Özet
    - 4.9.4. Keyfi Argüman Listeleri
    - 4.9.5. Argüman Listelerini Açma
    - 4.9.6. Lambda İfadeleri
    - 4.9.7. Dokümantasyon Stringler’i
    - 4.9.8. Fonksiyon Ek Açıklamaları
  - 4.10. Intermezzo: Kodlama Stili
- 5. Veri Yapıları
  - 5.1. Listeler Üzerine
    - 5.1.1. Listeleri Yığın Olarak Kullanma
    - 5.1.2. Listeleri Kuyruk Olarak Kullanma
    - 5.1.3. Liste Kavramaları
    - 5.1.4. İç İçe Liste Kavramaları
    - 5.1.5. Unpacking in Lists and List Comprehensions
  - 5.2. `del` ifadesi
  - 5.3. Veri Grupları ve Diziler
  - 5.4. Kümeler
  - 5.5. Sözlükler
  - 5.6. Döngü Teknikleri
  - 5.7. Koşullar Üzerine
  - 5.8. Diziler ile Diğer Veri Tiplerinin Karşılaştırılması
- 6. Modüller
  - 6.1. Modüller hakkında daha fazla
    - 6.1.1. Modülleri komut dosyası olarak yürütme
    - 6.1.2. Modül Arama Yolu
    - 6.1.3. “Derlenmiş” Python dosyaları
  - 6.2. Standart modüller
  - 6.3. `dir()` Fonksiyonu
  - 6.4. Paketler
    - 6.4.1. Bir Paketten * İçe Aktarma
    - 6.4.2. Paket İçi Referanslar
    - 6.4.3. Birden Çok Dizindeki Paketler
- 7. Girdi ve Çıktı
  - 7.1. Güzel Çıktı Biçimlendirmesi
    - 7.1.1. Biçimlendirilmiş Dize Değişmezleri
    - 7.1.2. String format() Metodu
    - 7.1.3. Manuel Dize Biçimlendirmesi
    - 7.1.4. Eski dize biçimlendirmesi
  - 7.2. Dosyaları Okuma ve Yazma
    - 7.2.1. Dosya Nesnelerinin Metotları
    - 7.2.2. Yapılandırılmış verileri `json` ile kaydetme
- 8. Hatalar ve Özel Durumlar
  - 8.1. Söz Dizimi Hataları
  - 8.2. Özel Durumlar
  - 8.3. Özel Durumları İşleme
  - 8.4. Hata Yükseltme
  - 8.5. İstisna Zincirleme
  - 8.6. Kullanıcı Tanımlı İstisnalar
  - 8.7. Temizleme Eylemlerini Tanımlama
  - 8.8. Önceden Tanımlanmış Temizleme Eylemleri
  - 8.9. Birden Fazla Alakasız İstisna Oluşturma ve İşleme
  - 8.10. İstisnaları Notlarla Zenginleştirme
- 9. Sınıflar
  - 9.1. İsim ve Nesneler Hakkında Birkaç Şey
  - 9.2. Python Etki Alanları ve Ad Alanları
    - 9.2.1. Kapsamlar ve Ad Alanları Örneği
  - 9.3. Sınıflara İlk Bakış
    - 9.3.1. Sınıf Tanımlama Söz Dizimi
    - 9.3.2. Sınıf Nesneleri
    - 9.3.3. Örnek Nesneleri
    - 9.3.4. Metot Nesneleri
    - 9.3.5. Sınıf ve Örnek Değişkenleri
  - 9.4. Rastgele Açıklamalar
  - 9.5. Kalıtım
    - 9.5.1. Çoklu Kalıtım
  - 9.6. Özel Değişkenler
  - 9.7. Oranlar ve Bitişler
  - 9.8. Yineleyiciler
  - 9.9. Üreteçler
  - 9.10. Üreteç İfadeleri
- 10. Brief tour of the standard library
  - 10.1. Operating system interface
  - 10.2. File wildcards
  - 10.3. Command-line arguments
  - 10.4. Error output redirection and program termination
  - 10.5. String pattern matching
  - 10.6. Matematik
  - 10.7. Internet access
  - 10.8. Dates and times
  - 10.9. Data compression
  - 10.10. Performance measurement
  - 10.11. Quality control
  - 10.12. Batteries included
- 11. Brief tour of the standard library — part II
  - 11.1. Output formatting
  - 11.2. Şablonlamak
  - 11.3. Working with binary data record layouts
  - 11.4. Çoklu iş parçacığı
  - 11.5. Günlükleme
  - 11.6. Weak references
  - 11.7. Tools for working with lists
  - 11.8. Decimal floating-point arithmetic
- 12. Sanal Ortamlar ve Paketler
  - 12.1. Tanıtım
  - 12.2. Sanal Ortamlar Oluşturma
  - 12.3. Paketleri pip ile Yönetme
- 13. Sırada Ne Var?
- 14. Etkileşimli Girdi Düzenleme ve Geçmiş İkame
  - 14.1. Tab Tamamlama ve Geçmiş Düzenleme
  - 14.2. Etkileşimli Yorumlayıcıya Alternatifler
- 15. Floating-Point Arithmetic: Issues and Limitations
  - 15.1. Temsil Hatası
- 16. Ek Bölüm
  - 16.1. Etkileşimli Mod
    - 16.1.1. Hata İşleme
    - 16.1.2. Yürütülebilir Python Komut Dosyaları
    - 16.1.3. Etkileşimli Başlangıç Dosyası
    - 16.1.4. Özelliştirme Modülleri