Takip et

Python Tutorial: Başlangıçtan İleriye Kapsamlı Rehber

Python Tutorial: Başlangıçtan İleriye Kapsamlı Rehber Yazılım dünyasına adım atmak isteyen herkes için Python, öğrenmes

Python Tutorial: Başlangıçtan İleriye Kapsamlı Rehber

Yazılım dünyasına adım atmak isteyen herkes için Python, öğrenmesi kolay sözdizimi ve geniş uygulama alanlarıyla mükemmel bir başlangıç noktasıdır. Web geliştirmeden yapay zekaya, veri analizinden otomasyona kadar birçok alanda kullanılan Python, bugün en popüler programlama dillerinden biridir. Bu rehber, Python’a sıfırdan başlayanlar için temel kavramları, kurulumu, sözdizimini ve pratik örnekleri kapsayan kapsamlı bir yol haritası sunmaktadır. Hazırsanız, bu heyecan verici yolculuğa birlikte çıkalım!

Bölüm 1: Python’a Giriş ve Kurulum

Python Nedir?

Python, Guido van Rossum tarafından 1991 yılında geliştirilmiş, yüksek seviyeli, yorumlanabilen, nesne yönelimli ve genel amaçlı bir programlama dilidir. “Okunabilirliği” ve “sadelik” felsefesi üzerine kurulmuştur; bu da onu yeni başlayanlar için ideal kılar. Geniş standart kütüphanesi sayesinde birçok karmaşık görevi basit kodlarla halledebilirsiniz.

Neden Python Öğrenmelisiniz?

  • Kolay Öğrenilebilir: Basit ve anlaşılır sözdizimi sayesinde programlamaya yeni başlayanlar hızla adapte olabilir.
  • Geniş Uygulama Alanları: Web geliştirme (Django, Flask), veri bilimi ve yapay zeka (Pandas, NumPy, TensorFlow), otomasyon, oyun geliştirme, masaüstü uygulamaları gibi birçok alanda kullanılır.
  • Büyük Topluluk Desteği: Karşılaştığınız sorunlara hızlıca çözüm bulabileceğiniz devasa bir geliştirici topluluğu ve zengin kaynaklar mevcuttur.
  • Çok Yönlülük: Windows, macOS, Linux gibi farklı işletim sistemlerinde sorunsuz çalışır.
  • Yüksek Talep: İş piyasasında Python bilen geliştiricilere olan talep her geçen gün artmaktadır.

Python Kurulumu

Python’u bilgisayarınıza kurmak oldukça basittir. Genellikle Python 3.x versiyonu tercih edilir.

  1. Python İndirme: Python resmi web sitesine gidin. İşletim sisteminize (Windows, macOS, Linux) uygun en son kararlı Python 3 sürümünü indirin.
  2. Kurulum:
    • Windows İçin: İndirdiğiniz .exe dosyasını çalıştırın. Kurulum ekranında “Add Python X.X to PATH” seçeneğini işaretlemeyi UNUTMAYIN. Bu, Python komutlarını komut istemcisinden doğrudan çalıştırmanızı sağlar. Ardından “Install Now” seçeneğine tıklayarak kurulumu tamamlayın.
    • macOS İçin: İndirdiğiniz .pkg dosyasını açın ve adımları takip ederek kurulumu tamamlayın. macOS genellikle Python’un eski bir sürümüyle gelir, ancak yeni uygulamalar için resmi siteden indirdiğiniz sürümü kullanmanız önemlidir.
    • Linux İçin: Çoğu Linux dağıtımında Python zaten yüklüdür. Terminali açarak python3 --version komutuyla kontrol edebilirsiniz. Güncel bir sürüm yoksa, dağıtımınızın paket yöneticisini kullanarak (örn: Ubuntu için sudo apt install python3) kurabilirsiniz.
  3. Kurulumu Doğrulama: Komut istemcisini (Windows’ta CMD veya PowerShell, macOS/Linux’ta Terminal) açın ve aşağıdaki komutları çalıştırın:
    python --version
    python3 --version
    pip --version
    pip3 --version

    Bu komutlar Python ve pip (Python paket yöneticisi) versiyonlarını göstermelidir. Eğer hata alırsanız, kurulum adımlarını tekrar kontrol edin, özellikle PATH ayarını.

  4. Geliştirme Ortamı (IDE) Seçimi: Kod yazmak ve çalıştırmak için bir IDE (Entegre Geliştirme Ortamı) veya kod düzenleyici kullanmanız önerilir. Başlangıç için popüler seçenekler:
    • VS Code: Hafif, çok yönlü ve birçok dil için eklenti desteği sunar.
    • PyCharm Community Edition: Python için özel olarak tasarlanmış, güçlü özelliklere sahip profesyonel bir IDE’dir.
    • Jupyter Notebook: Veri analizi ve etkileşimli kodlama için idealdir.

    Bu rehberde basit kod örnekleri için herhangi bir metin düzenleyici veya doğrudan terminal yeterli olacaktır.

Bölüm 2: Python Temelleri: İlk Adımlarınız

Merhaba Dünya!

Her programlama dilini öğrenirken ilk adım “Merhaba Dünya!” çıktısı almaktır. Python’da bu oldukça basittir. Bir metin düzenleyici açın, aşağıdaki kodu yazın ve ilk_programim.py gibi bir isimle kaydedin.

print("Merhaba Dünya!")

Kaydettiğiniz dizine komut istemcisinden gidin ve şu komutu çalıştırın: python ilk_programim.py. Ekranda “Merhaba Dünya!” yazısını görmelisiniz. print() fonksiyonu, ekrana çıktı vermek için kullanılır.

Değişkenler ve Veri Tipleri

Değişkenler, verileri depolamak için kullanılan isimlendirilmiş depolama alanlarıdır. Python, veri tipini otomatik olarak algılar (dinamik tiplendirme).

# Sayısal Veri Tipleri: int (tam sayı), float (ondalıklı sayı)
yas = 30           # int
boy = 1.75         # float

Metin Veri Tipi: str (string)

isim = "Ayşe" # str mesaj = 'Merhaba Python!' # Tek tırnak da kullanılabilir

Mantıksal Veri Tipi: bool (boolean)

aktif = True # bool (True veya False) pasif = False # bool print(f"Ad: {isim}, Yaş: {yas}, Boy: {boy}, Aktif: {aktif}") print(type(yas)) # Bir değişkenin tipini öğrenmek için type() kullanılır. print(type(boy)) print(type(isim))

Python’da değişken tanımlamak için herhangi bir anahtar kelimeye ihtiyaç yoktur, doğrudan atama yapabilirsiniz.

Operatörler

Operatörler, değişkenler ve değerler üzerinde işlemler yapmak için kullanılır.

  • Aritmetik Operatörler: +, -, , / (bölme), % (mod alma), * (üs alma), // (tam sayı bölme)
  • Karşılaştırma Operatörleri: == (eşit mi), != (eşit değil mi), > (büyük mü), < (küçük mü), >= (büyük eşit mi), <= (küçük eşit mi)
  • Mantıksal Operatörler: and (ve), or (veya), not (değil)
a = 10
b = 3

Aritmetik

print(f"Toplam: {a + b}") # 13 print(f"Çarpım: {a * b}") # 30 print(f"Bölüm: {a / b}") # 3.333... print(f"Mod: {a % b}") # 1 (10'un 3'e bölümünden kalan)

Karşılaştırma

print(f"a, b'ye eşit mi? {a == b}") # False print(f"a, b'den büyük mü? {a > b}") # True

Mantıksal

x = True y = False print(f"x ve y: {x and y}") # False print(f"x veya y: {x or y}") # True print(f"x'in değil'i: {not x}") # False

Kullanıcıdan Girdi Alma

input() fonksiyonu, kullanıcıdan veri almak için kullanılır. Aldığı tüm girdileri varsayılan olarak string (metin) olarak döndürür. Eğer sayısal bir girdi bekliyorsanız, tip dönüşümü yapmanız gerekir.

ad = input("Adınız nedir? ")
yas_str = input("Yaşınız kaç? ")
yas = int(yas_str) # String'i tam sayıya dönüştürme

print(f"Merhaba {ad}, {yas} yaşındasınız.")
print(f"Bir yıl sonra {yas + 1} yaşında olacaksınız.")

Bölüm 3: Kontrol Akışları ve Fonksiyonlar

Koşullu İfadeler (if-elif-else)

Programınızın belirli koşullara göre farklı işlemler yapmasını sağlamak için koşullu ifadeler kullanılır. Python'da bloklar girintilerle belirlenir (boşluk veya tab).

hava_durumu = "yağmurlu"
sicaklik = 25

if hava_durumu == "yağmurlu":
    print("Şemsiyeni almayı unutma!")
elif hava_durumu == "güneşli" and sicaklik > 20:
    print("Hava çok güzel, dışarı çıkabilirsin.")
else:
    print("Hava durumu belirsiz.")

Kısa if-else (tek satır)

durum = "geçti" if sicaklik > 10 else "kaldı" print(f"Durum: {durum}")

Döngüler (for ve while)

Döngüler, belirli bir kod bloğunu birden fazla kez çalıştırmak için kullanılır.

  • for döngüsü: Bir dizi (liste, string, demet vb.) üzerindeki her bir öğe için veya belirli bir sayı aralığında döngü yapmak için kullanılır.
    # Bir liste üzerinde döngü
    meyveler = ["elma", "muz", "kiraz"]
    for meyve in meyveler:
        print(meyve)
    
    

    Sayı aralığında döngü (range fonksiyonu)

    range(5) -> 0, 1, 2, 3, 4

    range(2, 7) -> 2, 3, 4, 5, 6

    range(0, 10, 2) -> 0, 2, 4, 6, 8

    for i in range(3): print(f"Sayı: {i}")
  • while döngüsü: Belirli bir koşul doğru olduğu sürece çalışır.
    sayac = 0
    while sayac < 3:
        print(f"Sayıcı: {sayac}")
        sayac += 1 # sayac = sayac + 1
    
    

    break ve continue

    break: döngüyü tamamen sonlandırır

    continue: mevcut iterasyonu atlar ve bir sonraki iterasyona geçer

    for i in range(5): if i == 2: continue # 2'yi atla if i == 4: break # 4'e gelince döngüyü bitir print(i) # Çıktı: 0, 1, 3

Listeler, Demetler, Kümeler ve Sözlükler

Python'da verileri düzenlemek için kullanılan temel veri yapılarıdır.

  • Listeler (List): Sıralı, değiştirilebilir (mutable) ve farklı veri tiplerini içerebilen koleksiyonlardır. Köşeli parantez [] ile tanımlanır.
    my_list = [1, "merhaba", 3.14, True]
    print(my_list[0])    # İlk eleman (indeks 0'dan başlar)
    my_list.append("yeni") # Eleman ekleme
    my_list[0] = 10      # Eleman değiştirme
    print(my_list)
  • Demetler (Tuple): Sıralı, değiştirilemez (immutable) koleksiyonlardır. Parantez () ile tanımlanır.
    my_tuple = (1, 2, "üç")
    print(my_tuple[1])   # 2
    

    my_tuple[0] = 5 # Hata verir, çünkü demetler değiştirilemez.

  • Kümeler (Set): Sırasız, değiştirilebilir ve benzersiz elemanlar içeren koleksiyonlardır. Küme parantezi {} ile tanımlanır veya set() fonksiyonu ile oluşturulur.
    my_set = {1, 2, 3, 2}
    print(my_set)        # {1, 2, 3} (tekrarlayan 2 silindi)
    my_set.add(4)
    print(my_set)
  • Sözlükler (Dictionary): Anahtar-değer çiftleri (key-value pairs) şeklinde veri depolayan, sırasız ve değiştirilebilir koleksiyonlardır. Küme parantezi {} ile tanımlanır.
    my_dict = {"ad": "Ali", "yas": 25, "sehir": "Ankara"}
    print(my_dict["ad"]) # Ali
    my_dict["yas"] = 26  # Değer güncelleme
    my_dict["meslek"] = "Mühendis" # Yeni anahtar-değer ekleme
    print(my_dict)
    print(my_dict.keys())   # Anahtarları listeler
    print(my_dict.values()) # Değerleri listeler

Fonksiyonlar

Fonksiyonlar, belirli bir görevi yerine getiren yeniden kullanılabilir kod bloklarıdır. Kod tekrarını azaltır, kodunuzu daha düzenli ve okunabilir hale getirir. def anahtar kelimesi ile tanımlanır.

# Parametresiz fonksiyon
def merhaba_yaz():
    print("Merhaba, fonksiyondan!")

merhaba_yaz() # Fonksiyonu çağırma

Parametreli fonksiyon

def selamla(isim): print(f"Merhaba, {isim}!") selamla("Ayşe") selamla("Mehmet")

Dönüş değeri olan fonksiyon

def topla(sayi1, sayi2): sonuc = sayi1 + sayi2 return sonuc # Sonucu döndür toplam = topla(5, 3) print(f"Toplam: {toplam}") # 8

Varsayılan parametre değeri

def indirim_hesapla(fiyat, oran=0.10): # Varsayılan oran %10 indirimli_fiyat = fiyat * (1 - oran) return indirimli_fiyat print(f"100 TL'lik ürünün %10 indirimli fiyatı: {indirim_hesapla(100)}") print(f"100 TL'lik ürünün %20 indirimli fiyatı: {indirim_hesapla(100, 0.20)}")

Bölüm 4: Dosya İşlemleri ve Modüller

Dosya Okuma ve Yazma

Python, dosyalarla kolayca etkileşim kurmanızı sağlar. Dosya işlemleri için open() fonksiyonu kullanılır.

  • 'w' (write): Dosyayı yazma modunda açar. Eğer dosya yoksa oluşturur, varsa içeriğini siler ve yeniden yazar.
  • 'a' (append): Dosyayı ekleme modunda açar. Eğer dosya yoksa oluşturur, varsa içeriğin sonuna ekler.
  • 'r' (read): Dosyayı okuma modunda açar. Dosya yoksa hata verir.
# Dosyaya yazma

'with open()' kullanmak, dosya işlemleri bittikten sonra dosyayı otomatik kapatır.

with open("ornek.txt", "w", encoding="utf-8") as dosya: dosya.write("Bu ilk satır.\n") dosya.write("Bu da ikinci satır.\n") print("Dosyaya yazıldı.")

Dosyadan okuma

with open("ornek.txt", "r", encoding="utf-8") as dosya: icerik = dosya.read() # Tüm içeriği oku print("\nDosya İçeriği:") print(icerik)

Satır satır okuma

with open("ornek.txt", "r", encoding="utf-8") as dosya: print("\nSatır Satır Dosya İçeriği:") for satir in dosya: print(satir.strip()) # strip() ile satır sonundaki boşlukları/newline karakterini kaldır

Python Modülleri

Modüller, Python kodunu düzenlemenin ve yeniden kullanmanın bir yoludur. Bir modül, Python fonksiyonları, sınıfları ve değişkenleri içeren bir .py uzantılı dosyadır. Python'da binlerce hazır modül bulunur ve kendi modüllerinizi de oluşturabilirsiniz.

# Örnek: math modülünü kullanarak matematiksel işlemler yapma
import math

print(f"Pi sayısı: {math.pi}")
print(f"16'nın karekökü: {math.sqrt(16)}")

Sadece belirli bir fonksiyonu import etme

from math import factorial print(f"5'in faktöriyeli: {factorial(5)}") # 120

Kendi modülümüzü oluşturma (örneğin, 'benim_modulum.py' adında bir dosya oluşturun)

benim_modulum.py içeriği:

def selam_ver(isim):

return f"Merhaba {isim}, benim modülümden!"

Başka bir Python dosyasında kullanma:

import benim_modulum

print(benim_modulum.selam_ver("Dünya"))

Modüller sayesinde kodunuzu daha modüler, okunabilir ve yönetilebilir hale getirebilirsiniz. Ayrıca, PyPI (Python Package Index) üzerinden pip install komutuyla birçok üçüncü taraf paketi (örneğin requests, pandas) kolayca kurup kullanabilirsiniz.

Sonuç ve Sıkça Sorulan Sorular (SSS)

Bu rehber, Python programlama dilinin temellerini anlamanız için size kapsamlı bir başlangıç noktası sunmuştur. Değişkenlerden kontrol akışlarına, veri yapılarından fonksiyonlara ve dosya işlemlerine kadar birçok önemli konuyu ele aldık. Unutmayın ki programlama öğrenmek bir maratondur, sprint değil. Pratik yapmak, bol bol kod yazmak ve hatalarla yüzleşmek öğrenme sürecinin ayrılmaz bir parçasıdır. Bu temelleri sağlam bir şekilde öğrendikten sonra, ilgi alanlarınıza göre web geliştirme, veri bilimi, yapay zeka gibi alanlara yönelebilirsiniz. Başarılar dileriz!

SSS (Sıkça Sorulan Sorular)

Python öğrenmek ne kadar sürer?
Temelleri öğrenmek birkaç hafta sürebilirken, uzmanlaşmak ve karmaşık projeler geliştirmek aylar hatta yıllar alabilir. Önemli olan düzenli pratik yapmak ve sürekli öğrenmeye açık olmaktır. Günde 1-2 saat ayırarak birkaç ay içinde anlamlı projeler yapabilecek seviyeye gelebilirsiniz.
Hangi IDE'yi veya kod düzenleyiciyi kullanmalıyım?
Başlangıç için VS Code veya PyCharm Community Edition mükemmel seçeneklerdir. VS Code daha hafif ve genel amaçlıyken, PyCharm Python odaklı güçlü özellikler sunar. İkisini de deneyerek size en uygun olanı seçebilirsiniz.
Python ile neler yapabilirim?
Python ile yapabilecekleriniz neredeyse sınırsızdır:
  • Web uygulamaları geliştirebilirsiniz (Django, Flask).
  • Veri analizi ve görselleştirme yapabilirsiniz (Pandas, NumPy, Matplotlib).
  • Yapay zeka ve makine öğrenimi modelleri oluşturabilirsiniz (TensorFlow, Keras, Scikit-learn).
  • Otomasyon betikleri yazabilirsiniz (sistem yönetimi, dosya işlemleri).
  • Oyun geliştirebilirsiniz (Pygame).
  • Masaüstü uygulamaları yapabilirsiniz (Tkinter, PyQt).
Bir sonraki adım ne olmalı?
Temelleri öğrendikten sonra, küçük projeler geliştirmeye başlayın. Örneğin, bir hesap makinesi, bir kelime sayacı veya basit bir not defteri uygulaması yapmayı deneyin. Ardından ilgi alanlarınıza göre belirli bir alana (web, veri bilimi vb.) odaklanarak o alandaki kütüphaneleri ve framework'leri öğrenmeye başlayın. Online kurslar, dokümantasyonlar ve topluluklar size yol gösterecektir.

Yorumlar
İçeriği beğendiniz mi? Bir tartışma başlatın veya görüşlerinizi paylaşın.
Yorum Yaz

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Gönder

E-posta Bülteni
Yazılım Topluluğuna Katılın
En son güncellemeleri, yaratıcı ipuçlarını ve özel kaynakları doğrudan e-posta kutunuza alın. Tasarım ve inovasyonun geleceğini birlikte keşfedelim.
Exit mobile version