PYTHON Programlama (Proje Tabanlı)
Kurs Saati: 40 saat (8 gün)
Ön Koşul: Herhangi bir ön koşulu yoktur.
• Niçin Python?
- Programlama Dillerinin Tarihsel Gelişimi
- Python Programlama Dilinin Tarihsel Gelişimi
- Python Gerçekleştirimleri ve Python Dağıtımları
- Python Programlama Dilinin Temel Özellikleri
- Python Ortamının Kurulumu
- Derleyici (Compiler) ve Yorumlayıcı (Interpreter) Farkı
- .py, .pyc, .ipynb dosyaları ve farkları
• Python Programlama Diline Merhaba
- Komut Yorumlayıcı Ortamda (REPL) Çalışma
- Yorumlayıcılar ve # karakteri
- Docstrings
- Python’da Temel Veri Tipleri
- Python’da Tip Dönüşümü
- Değiştirilebilir (Mutable) ve Değiştirilemez (Immutable) Tür Kavramları
- Python’ da Değişken ve Sabit Tanımlamaları
- PEP8 Önerileri
- Fonksiyon ve Metot Kavramları
- Built-in Fonksiyon ve Sınıf Kavramları
- Operatör Kavramı, Operatörler Arasındaki Öncelik İlişkileri
- Python’da Kimlik Operatörleri
- input ve print Fonksiyonlarının Ayrıntıları
- Escape Karakterleri
• Veri Yapıları
- Dolaşılabilir (Iterable) Nesne Kavramı
- range Fonksiyonu
- len, in İşlevleri
- Diziler (Arrays)
- Listeler (Lists)
- Dizi - Liste Farkı
- Listeler Üzerinde İşlemler
- Listeler Üzerinde Dilimleme İşlemleri (List Slicing)
- Listelerin Açılması (List Unpacking)
- Listelerle Çok Boyutlu Dizilerin Oluşturulması
- Demetler (Tuples)
- Demetler Üzerinde İşlemler
- Demetlerin Açılması (Tuple Unpacking)
- Kümeler (Sets)
- Kümeler Üzerinde İşlemler
- Değiştirilemez Kümeler (Frozen Sets)
- Sözlükler (Dicts)
- Sözlükler Üzerinde İşlemler
- String’ler
- String’ler Üzerinde İşlemler
- String’lerin Dilimlenmesi
- Proje: Verilen bir listeden istenmeyen kelimeleri veya karakterleri temizleme
- Proje: Yazıcı tasarımı
• Python’da Karar ve Koşul Yapıları
- if, else, elif Deyimleri
- match case Yapısı
- while Döngüleri
- for Döngüleri
- break ve continue Deyimleri
- Koşul Operatörleri
- pass Deyimi
- Proje: Dijital Kronometre
• Fonksiyonların Tanımlanması ve Fonksiyonlarla İşlemler
- def ile kendi fonksiyonunu tanımlama
- Argüman-Parametre Farkı
- Fonksiyonların Parametre Değişkenleri
- Fonksiyonların *’lı ve **’lı Parametreleri
- Fonksiyon Çağrılarında Argümanların Kullanımı
- *’lı **’lı Argümanlar
- Fonksiyon Parametrelerinde Tür Kontrolü
- Özyinelemeli Fonksiyon Tanımlamaları
- İç İçe Fonksiyon Tanımlamaları
- enumerate, reduce, map, filter ve zip Fonksiyonları
- Proje: Python buit-in fonksiyonlarını yazma
• Modüller ve Paketler
- Modüllerin Oluşturulması
- Modüllerin import Edilmesi
- Python Modül ve Script Farkı
- Python’da Rastgele Sayıların Elde Edilmesi
- Değişkenlerin Faaliyet Alanları (Scope) ve Ömürleri
- LEGB Kuralı
- bytes ve bytearray Türleri
- Paket Kavramı
- Paketlerin Oluşturulması ve import Edilmesi
- Paketlerdeki _init_.py Dosyasının Anlamı
- İç İçe Paketlerin Oluşturulması
- pip ile paket kurulumu ve yönetimi
- Proje: Metin seslendirme
- Proje: Metin bulutunu resime dönüştürme
• Comprehensions (Tek Satıra İndirgeme İşlemleri)
- List Comprehensions
- Set Comprehensions
- Dictionary Comprehensions
• Üretici Fonksiyonlar ve Lambda İfadeleri
- Üretici Fonksiyon (Generators) Kavramı
- Üretici Fonksiyonların Tanımlanması ve Kullanılması
- Lambda İfadeleri
- Proje: LIFO | FIFO tabanlı bir hayvan barınağı
• Exception Mekanizması ve Hata Yakalama
- Python’da Exception Mekanizmasının Kullanımı
- Exception’ların oluşturulması ve yakalanması
- Exception Sınıflarının Yazılması
- Çok Karşılaşılan Exception Sınıflar
- Proje: Kendi exception sınıfını oluşturma
• Dosya İşlemleri
- Dosya - Dizin İşlemleri
- os, sys, shutil modülleri
- Dosyaların Açılması ve Kapatılması
- Dosyalarda Yazma ve Okuma İşlemleri
- with deyimi
- Text ve Binary Dosyalar
- csv modülü ve dosya işlemleri
- pandas modülü ile Excel dosyaları ile çalışmak
- pandas modülü ile JSON dosyaları ile çalışmak
- pandas modülü ile HTML dosyaları ile çalışmak
- PDF dosyaları ile çalışmak
- Proje : Dosya tabanlı bir sözlük | rehber programı
- Proje: PDF dosyası üzerinde merge ve split işlemleri
• Veritabanı İşlemleri
- Veritabanı Nedir?
- Temel SQL Sorguları
- SQL - NoSQL Farkı
- sqlite ile çalışmak,
- pandas modülü ile veritabanı işlemleri,
- Web scraping işlemleri
- Proje : Veritabanı tabanlı öğrenci | müşteri takip programı
Eğitim Dili:Eğitim materyalleri Türkçe-İngilizce olup anlatım Türkçe yapılacaktır.Eğitim Yeri:Eğitim online (uzaktan) yapılacaktır.Eğitmen: Dr. Bülent Çobanoğlu