PYTHON EĞİTİM SERİSİ · DERS 01 / 16
Bir programın kullanıcıya adıyla hitap ettiğini, fiyat hesapladığını veya girilen bilgileri ekranda gösterdiğini düşünelim.
Bu işlemler bize oldukça sıradan gelebilir.
Ancak programın bütün bunları yapabilmesi için önce bilgileri bir yerde tutması gerekir.
Örneğin bir alışveriş uygulaması ürünün adını ve fiyatını bilmelidir. Bir hava durumu uygulaması sıcaklık değerini kullanmalıdır. Bir oyun ise oyuncunun puanını takip etmelidir.
İşte programlama dünyasında bu bilgileri kullanmamızı sağlayan temel kavramlardan biri değişkenlerdir.
Bir diğer önemli kavram da veri türleridir.
Çünkü bilgisayar açısından "25" ile 25 aynı şey değildir. Biri metin, diğeri sayıdır.
Bu farkı anlamadan program yazmaya başladığımızda, ilk bakışta anlamsız görünen hatalarla karşılaşabiliriz.
Bu derste Python’da değişkenlerin nasıl oluşturulduğunu, verilerin neden farklı türlere ayrıldığını ve kullanıcıdan aldığımız bilgileri programlarımızda nasıl kullanabileceğimizi öğreneceğiz.
Üstelik yalnızca örnekleri izlemeyeceğiz. Dersin sonunda kullanıcıdan bilgi alarak bir çalışma kartı oluşturan küçük bir Python programı da hazırlayacağız.
Bu derse başlamadan önce: Bilgisayarınızda Python ve Visual Studio Code’un kurulu olması yeterli. Kurulum yapmadıysanız Visual Studio Code’da Python Kurulumu ve İlk Programı Çalıştırma rehberimizle başlayabilirsiniz.
İlk Python dosyamızı hazırlayalım
Visual Studio Code’u açalım.
Daha önce oluşturduğumuz Python çalışma klasörünü kullanabilir veya bilgisayarımızda PythonDersleri adında yeni bir klasör hazırlayabiliriz.
Ardından bu klasörde yeni bir dosya oluşturup adını şöyle belirleyelim:
degiskenler.py
Burada .py uzantısının önemli olduğunu hatırlayalım. Python kaynak kodu dosyaları genellikle bu uzantıyla kaydedilir.
Dosyamıza ilk olarak şu satırı yazalım:
print("Python öğrenmeye başladım!")Programı Visual Studio Code’da Run Python File seçeneğiyle veya terminalden çalıştırabiliriz.
Terminal kullanıyorsak, dosyanın bulunduğu klasörde şu komutu yazabiliriz:
python degiskenler.pyWindows sistemimizde Python başlatıcısı kullanılıyorsa şu komut da çalışabilir:
py degiskenler.pyEkranda beklediğimiz çıktı şöyle olacaktır:
Python öğrenmeye başladım!Bu küçük örnekte print() komutuyla ekrana bir mesaj yazdırdık.
Parantez içindeki metni çift tırnaklarla belirttik.
Python’da print() yerleşik bir fonksiyondur. Şimdilik fonksiyonların bütün ayrıntılarını bilmemiz gerekmiyor.
Bu komutun ekrana bilgi yazdırmak için kullanıldığını bilmek yeterli.
Peki aynı mesajı farklı bir yerde yeniden kullanmak isteseydik?
Ya da mesajın içindeki bilgi zamanla değişseydi?
İşte burada değişkenler devreye giriyor.
Python’da değişken nedir?
Değişken, bir değere isim vererek o değeri programın farklı bölümlerinde kullanmamızı sağlar. Python’un resmî başlangıç rehberinde de değişken atama ve temel veri türleri örneklerle anlatılır.
Bunu, üzerine etiket yapıştırdığımız bir kutuya benzetebiliriz.
Kutunun üzerinde urun_adi yazdığını düşünelim.
İçinde ise "Klavye" bilgisi bulunuyor.
Python’da bu ilişkiyi şöyle oluşturabiliriz:
urun_adi = "Klavye"
print(urun_adi)Çıktımız:
KlavyeBurada iki önemli ayrıntı bulunuyor.
İlk satırdaki urun_adi, değişkenimizin ismidir.
Eşittir işaretinin sağ tarafındaki "Klavye" ise bu değişkene atadığımız değerdir.
Python, urun_adi ismini kullandığımızda ilgili değere ulaşmamızı sağlar.
İkinci satırdaki print(urun_adi) ifadesinde tırnak işareti bulunmadığına dikkat edelim.
Çünkü burada doğrudan "urun_adi" metnini yazdırmak istemiyoruz.
İsmi urun_adi olan değişkenin değerini ekrana getirmek istiyoruz.
Aradaki farkı görmek için şu örneği çalıştıralım:
urun_adi = "Klavye"
print("urun_adi")
print(urun_adi)Beklenen çıktı:
urun_adi
Klavyeİlk satırda tırnak içindeki ifadeyi olduğu gibi yazdırdık.
İkinci satırda ise değişkenin tuttuğu değeri gördük.
Bu ayrımı anlamak, Python öğrenirken karşılaşacağımız birçok karışıklığı önler.
Bir değişkenin değeri sonradan değişebilir mi?
Evet.
Örneğin bir uygulamada kullanıcının seçtiği ürün başlangıçta klavye olabilir.
Daha sonra kullanıcı farklı bir ürün seçebilir.
urun_adi = "Klavye"
print(urun_adi)
urun_adi = "Fare"
print(urun_adi)Çıktı:
Klavye
FareProgram önce urun_adi değişkenine "Klavye" değerini atadı.
Ardından aynı değişkene "Fare" değerini atadık.
İkinci yazdırma işleminde yeni değeri gördük.
Burada değişkenin ismi aynı kaldı ancak ona bağlı değer değişti.
Bir başka önemli nokta da şu:
Python’da kullanılan = işareti bu örnekte matematikteki eşitlik anlamında değil, değer atama amacıyla kullanılıyor.
İki değerin eşit olup olmadığını karşılaştırma konusunu sonraki dersimizde ayrıca öğreneceğiz.
Değişken isimleri nasıl seçilmeli?
Program yazarken teknik olarak geçerli bir isim kullanmak yeterli değildir.
İsmin anlaşılır olması da önemlidir.
Şu iki örneği karşılaştıralım:
x = "İstanbul"
y = 25ve
sehir = "İstanbul"
sicaklik = 25Her iki örnekte de değişkenlere değer atadık.
Ancak ikinci örnekte değişkenlerin ne işe yaradığını anlamak çok daha kolay.
Özellikle bir program büyüdüğünde anlamlı isimler kullanmak bize zaman kazandırır.
Python’da değişken isimlerini belirlerken bazı kurallara dikkat etmeliyiz.
- İsimler harf veya alt çizgiyle başlayabilir; rakamla başlayamaz.
- İsimlerin içinde boşluk bulunamaz.
- Büyük ve küçük harfler birbirinden farklı kabul edilir.
if,for,classgibi Python’a ait özel kelimeler değişken ismi olarak kullanılamaz.printveinputgibi yerleşik fonksiyon isimlerini değişken olarak kullanmaktan kaçınmalıyız.
Örneğin şu isimler kullanılabilir:
urun_adi = "Monitör"
urun_fiyati = 4500
stok_adedi = 8Ancak aşağıdaki kullanım geçerli değildir:
2urun = "Klavye"Çünkü değişken ismi rakamla başlayamaz.
Benzer şekilde:
urun adi = "Klavye"ifadesi de yanlıştır. Değişken isminde boşluk bulunamaz.
Bunun yerine:
urun_adi = "Klavye"yazabiliriz.
Python topluluğunda yaygın kullanılan PEP 8 kodlama rehberi, değişken isimlerinde küçük harflerin ve gerektiğinde kelimeleri ayırmak için alt çizginin kullanılmasını önerir.
Bu yazım biçimine snake_case denir.
Örneğin toplamTutar yerine toplam_tutar yazmak Python’da yaygın bir tercihtir.
Böyle bir isimlendirme zorunlu olmasa da kodu daha düzenli ve okunabilir hâle getirir.
Bir de şu ayrıntıyı deneyelim:
isim = "Deniz"
Isim = "Ece"
print(isim)
print(Isim)Çıktı:
Deniz
EcePython, isim ile Isim ifadelerini farklı değişken isimleri olarak değerlendirir.
Bu nedenle değişken yazarken harflerin büyüklüğünü de kontrol etmeliyiz.
Python’da temel veri türleri nelerdir?
Artık değişken oluşturmayı biliyoruz.
Ancak bütün değişkenler aynı türde bilgi taşımaz.
Örneğin bir ürünün adı metindir.
Fiyatı sayıdır.
Stokta bulunup bulunmadığı ise doğru veya yanlış olarak ifade edilebilir.
Python, farklı türdeki değerleri işleyebilmek için çeşitli veri türleri kullanır.
Başlangıç aşamasında özellikle şu veri türlerini tanımamız yeterli:
| Veri türü | Python adı | Örnek |
|---|---|---|
| Metin | str | "Klavye" |
| Tam sayı | int | 25 |
| Ondalıklı sayı | float | 19.5 |
| Mantıksal değer | bool | True veya False |
| Değer bulunmadığını belirtme | NoneType | None |
Bu türleri ayrı ayrı inceleyelim.
Metin verileri: str
Python’da bir isim, şehir, açıklama veya herhangi bir metin kullanmak istediğimizde genellikle str türünden yararlanırız.
Örneğin:
ad = "Deniz"
sehir = "Ankara"
mesaj = "Python öğreniyorum"
print(ad)
print(sehir)
print(mesaj)Çıktı:
Deniz
Ankara
Python öğreniyorumBuradaki değerleri çift tırnak içinde yazdık.
Python’da tek tırnak da kullanabiliriz.
ad = 'Deniz'Bu kullanım da geçerlidir.
Ancak önemli olan, metnin başlangıç ve bitişindeki tırnak işaretlerini doğru kullanmaktır.
Bir başka ayrıntı ise rakamlardan oluşan metinlerle ilgilidir.
Örneğin:
posta_kodu = "06000"Burada 06000 sayısal karakterler içeriyor olsa da tırnak içinde bulunduğu için metindir.
Üstelik posta kodu gibi bilgilerde baştaki sıfırların korunması gerekebilir.
Bu nedenle rakam içeren her bilgiyi sayı olarak saklamak zorunda değiliz.
Telefon numaraları, ürün kodları ve posta kodları bazı durumlarda metin türüyle daha doğru temsil edilir.
Bir bilginin sayısal karakterlerden oluşması, o bilgi üzerinde mutlaka matematiksel işlem yapacağımız anlamına gelmez.
Tam sayılar: int
int, tam sayıları temsil etmek için kullanılan veri türüdür.
Örneğin bir sınıftaki öğrenci sayısı veya stok miktarı tam sayı olabilir.
ogrenci_sayisi = 24
stok_adedi = 15
puan = 100
print(ogrenci_sayisi)
print(stok_adedi)
print(puan)Bu örnekte sayıları tırnak içine almadık.
Çünkü metin değil, gerçek sayısal değerler oluşturmak istedik.
Python negatif tam sayıları da destekler:
sicaklik = -5
print(sicaklik)Çıktı:
-5Sayılar üzerinde toplama, çıkarma, çarpma ve bölme gibi işlemler yapılabilir.
Bu işlemleri ve işlem önceliklerini bir sonraki dersimizde ayrıntılı olarak inceleyeceğiz.
Şimdilik sayısal veri ile metin arasındaki farkı anlamamız yeterli.
Ondalıklı sayılar: float
Her sayının tam sayı olması gerekmez.
Örneğin bir ürün 49 lira 90 kuruşa satılıyor olabilir.
Ya da hava sıcaklığı 22,5 derece olabilir.
Bu tür değerler için float kullanılabilir.
sicaklik = 22.5
boy = 1.75
urun_fiyati = 49.90
print(sicaklik)
print(boy)
print(urun_fiyati)Çıktı:
22.5
1.75
49.9Burada iki ayrıntıya dikkat edelim.
Birincisi: Python’da ondalık sayı yazarken virgül yerine nokta kullanırız.
Yani:
sicaklik = 22.5doğru bir ondalıklı sayı örneğidir.
İkincisi: Python, 49.90 değerini ekrana 49.9 olarak yazdırabilir.
Çünkü sayısal değer açısından bu iki gösterim birbirine eşittir.
Parasal tutarları her zaman iki basamakla gösterme ve hesaplamalarda oluşabilecek hassasiyet sorunları daha ileri konulardır.
Özellikle finansal işlemlerde float değerlerinin her zaman tam ondalık hassasiyet sağlamadığını bilmek gerekir.
Bu dersimizde float türünü temel sayısal veri olarak tanımamız yeterli.
Doğru veya yanlış bilgisi: bool
Bazı bilgiler metin veya sayı yerine yalnızca iki olasılığı ifade eder.
Örneğin bir kullanıcı hesabı aktif olabilir veya olmayabilir.
Bir işlem tamamlanmış olabilir veya tamamlanmamış olabilir.
Python’da bu tür durumları bool veri türüyle temsil edebiliriz.
hesap_aktif = True
gorev_tamamlandi = False
print(hesap_aktif)
print(gorev_tamamlandi)Çıktı:
True
FalseBurada True doğru, False ise yanlış anlamına gelir.
Python’da bu kelimelerin ilk harfleri büyük yazılır.
Ayrıca tırnak içine alınmazlar.
Örneğin:
durum = Trueile
durum = "True"aynı veri türünü oluşturmaz.
İlkinde mantıksal değer, ikincisinde metin saklanır.
Bu ayrım özellikle ileride öğreneceğimiz koşullu ifadelerde çok önemli olacak.
Henüz bir değer bulunmuyorsa: None
Bazen bir değişken oluşturmak isteriz ancak ona henüz gerçek bir bilgi atamayız.
Örneğin bir uygulamanın henüz belirlenmemiş teslimat tarihi olabilir.
Python’da böyle bir durumu göstermek için None kullanılabilir.
teslimat_tarihi = None
print(teslimat_tarihi)Çıktı:
NoneNone, boş metin veya sıfırla aynı şey değildir.
Henüz anlamlı bir değerin bulunmadığını göstermek için kullanılan özel bir nesnedir; türü NoneType olarak adlandırılır.
Bu kavramı başlangıç için tanımamız yeterli. Daha sonra koşullar ve fonksiyonlar konularında neden önemli olduğunu daha iyi anlayacağız.

Bir değişkenin veri türünü nasıl öğrenebiliriz?
Kod yazarken bazen bir değişkenin hangi veri türünü taşıdığını bilmemiz gerekir.
Özellikle kullanıcıdan bilgi aldığımızda veya bir hata ile karşılaştığımızda bu kontrol yararlı olur.
Python’da type() fonksiyonunu kullanabiliriz.
Şu örneği çalıştıralım:
ad = "Deniz"
yas = 25
boy = 1.75
aktif = True
print(type(ad))
print(type(yas))
print(type(boy))
print(type(aktif))Çıktı:
<class 'str'>
<class 'int'>
<class 'float'>
<class 'bool'>Ekrandaki ifadeler ilk bakışta karmaşık görünebilir.
Ancak burada bizim için önemli olan str, int, float ve bool isimleridir.
Bunlar değişkenlerin taşıdığı değerlerin türünü gösterir.
Günlük programlama sırasında type() kontrolünden yararlanmak özellikle başlangıç döneminde oldukça faydalıdır.
Örneğin bir değişkenin sayı olduğunu düşünürken aslında metin olduğunu fark edebiliriz.
Böylece problemin neden kaynaklandığını daha kolay bulabiliriz.
Python’da veri türünü önceden belirtmek zorunda mıyız?
Python’da basit değişken atamalarında veri türünü ayrıca yazmak zorunda değiliz.
Örneğin:
deger = 10
print(type(deger))Çıktı:
<class 'int'>Ardından:
deger = "On"
print(type(deger))Çıktı:
<class 'str'>Burada aynı değişken ismine önce tam sayı, daha sonra metin atadık.
Python buna izin verir.
Bu özelliğe dinamik türleme denir.
Ancak Python’ın bu esnekliği, veri türlerinin önemsiz olduğu anlamına gelmez.
Tam tersine, hangi türdeki veriyi kullandığımızı bilmemiz gerekir.
Örneğin sayı beklediğimiz bir yerde metin bulunursa gerçekleştirmek istediğimiz işlem hata verebilir.
İyi kod yazmak, Python’ın esnekliğini kullanırken verilerin ne anlama geldiğini de açık tutmaktır.
Python’da kullanıcıdan bilgi nasıl alınır?
Şimdiye kadar bütün değerleri program dosyasının içine kendimiz yazdık.
Ancak gerçek uygulamalar genellikle kullanıcıdan da bilgi alır.
Örneğin bir program açıldığında kullanıcının ismini sorabilir.
Python’da bunun için input() fonksiyonunu kullanabiliriz.
ad = input("Adınız nedir? ")
print("Merhaba", ad)Programı çalıştırdığımızda ekranda şu soru görünecektir:
Adınız nedir?Kullanıcı Deniz yazıp Enter tuşuna basarsa:
Merhaba Denizçıktısı oluşacaktır.
Burada programın akışını inceleyelim.
Öncelikle input() fonksiyonu kullanıcıya bir soru gösteriyor.
Ardından kullanıcıdan giriş bekliyor.
Kullanıcı Enter’a bastığında girilen bilgi ad değişkenine atanıyor.
Son satırda ise bu değeri ekranda gösteriyoruz.
Bir başka ayrıntı da print() içerisinde virgül kullanmamızdır.
print("Merhaba", ad)Bu kullanım, metni ve değişkenin değerini aynı satırda göstermemizi sağlar.
print() varsayılan olarak bu iki öğenin arasına boşluk koyar.
Henüz metin birleştirme yöntemlerini bilmediğimiz için bu yaklaşım başlangıç açısından oldukça kullanışlıdır.
input() neden her zaman metin döndürür?
Şimdi önemli bir deney yapalım.
Aşağıdaki kodu yazalım:
yas = input("Kaç yaşındasınız? ")
print(yas)
print(type(yas))Kullanıcı 25 yazsın.
Çıktının son bölümünde ne görmeyi bekleriz?
25
<class 'str'>İşte başlangıç seviyesinde en çok şaşırtan konulardan biri bu.
Kullanıcı ekrana sayı yazsa bile input() fonksiyonu bilgiyi metin (str) olarak döndürür.
Çünkü kullanıcı klavyeden karakterler girer ve Python bu girişleri otomatik olarak tam sayı veya ondalıklı sayı türüne dönüştürmez.
Bu ayrım özellikle hesaplama yapan programlarda önemlidir.
Örneğin kullanıcıdan iki sayı alıp bunları toplamak istersek önce girişlerin doğru sayısal türe dönüştürülmesi gerekir.
Aksi hâlde beklediğimizden farklı bir sonuçla karşılaşabiliriz.
Metin nasıl sayıya dönüştürülür?
Python’da bazı veri türleri arasında dönüşüm yapabiliriz.
Örneğin metin biçimindeki "25" değerini tam sayıya dönüştürmek için int() fonksiyonunu kullanabiliriz.
yas_metni = input("Kaç yaşındasınız? ")
yas = int(yas_metni)
print(yas)
print(type(yas))Kullanıcı 25 değerini girdiğinde:
25
<class 'int'>sonucunu elde ederiz.
Burada iki aşamalı bir işlem yaptık.
Önce kullanıcının girdiği bilgiyi yas_metni değişkenine aldık.
Ardından int() ile dönüştürerek yas değişkenine tam sayı atadık.
Kodumuzu daha kısa şekilde de yazabiliriz:
yas = int(input("Kaç yaşındasınız? "))Bu kullanım da aynı dönüşümü yapar.
Ancak yeni başlayanlar için ilk örnekteki iki aşamalı yazım, işlemi anlamayı kolaylaştırabilir.
Ondalıklı sayı almak istiyorsak float() kullanabiliriz:
boy = float(input("Boyunuzu metre olarak yazın: "))
print("Boy:", boy)Kullanıcı 1.75 yazarsa:
Boy: 1.75çıktısını görürüz.
Burada yine ondalık ayırıcı olarak nokta kullandığımıza dikkat edelim.
Kullanıcının 1,75 şeklinde virgüllü giriş yapması, bu basit dönüşüm örneğinde hataya neden olabilir.
Sayıya dönüştürülemeyen bilgi girilirse ne olur?
Bir kullanıcıdan yaşını istediğimizi düşünelim.
Ancak kullanıcı sayı yerine yirmi yazsın.
Şu kodu çalıştırıyoruz:
yas = int(input("Yaşınız: "))
print(yas)Kullanıcı:
yirmiyazdığında Python bu metni tam sayıya dönüştüremez.
Sonuç olarak ValueError adı verilen bir hata oluşur.
Benzer şekilde:
int("12.5")ifadesi de tam sayı yazımı beklenen metin için geçerli bir dönüşüm değildir.
Ondalıklı bir metin değerini önce float() ile değerlendirmek gerekebilir.
Şimdilik bilmemiz gereken şey şu:
Veri dönüşümü ancak girilen bilgi dönüştürülmek istenen türe uygunsa başarılı olur.
Gerçek uygulamalarda kullanıcıların yanlış giriş yapma olasılığı da düşünülmelidir.
Bu tür durumlarda programın kapanmasını önlemek için hata yakalama yöntemleri kullanılır.
Ancak henüz o konuya gelmedik.
Bu yüzden ilk uygulamalarımızda kullanıcıdan istenen biçimde bilgi girmesini bekleyeceğiz.
Daha ileride try-except yapısını öğrendiğimizde hatalı girişleri de kontrollü biçimde ele alabileceğiz.
En sık karşılaşılan başlangıç hataları
Python öğrenirken hata yapmak normaldir.
Önemli olan hata mesajını anlamaya çalışmaktır.
Bir program çalışmadığında bütün kodu baştan yazmak yerine önce hangi satırda sorun bulunduğunu kontrol etmeliyiz.
Başlangıçta özellikle şu durumlarla karşılaşabiliriz.
Değişken ismini yanlış yazmak
sehir = "Ankara"
print(sehirr)Burada sehir değişkenini oluşturduk ancak yazdırırken sehirr yazdık.
Python bu ismi bulamayacağı için NameError hatası verebilir.
Çözüm, kullanılan değişken isminin doğru yazıldığını kontrol etmektir.
Tırnak işaretini unutmak
mesaj = MerhabaBu satırda Merhaba kelimesini metin olarak saklamak istediğimizi varsayalım.
Ancak tırnak işaretleri yok.
Python bunu daha önce tanımlanmış bir isim gibi değerlendirmeye çalışır.
Doğru kullanım:
mesaj = "Merhaba"şeklindedir.
Veri türünü karıştırmak
Örneğin:
yas = 25
print("Yaşım: " + yas)Burada + ile metin ve tam sayıyı doğrudan birleştirmeye çalışıyoruz.
Bu kullanım TypeError hatasına neden olur.
Şimdilik en kolay çözüm print() içinde virgül kullanmaktır:
yas = 25
print("Yaşım:", yas)Beklenen çıktı:
Yaşım: 25İlerleyen derslerde metinleri farklı yöntemlerle nasıl birleştirebileceğimizi öğreneceğiz.
Kullanıcı girişi bekleyen programın çalışmaması
input() kullanan örneklerde programın kullanıcıdan bilgi beklediğini unutmayalım.
Özellikle Visual Studio Code’da kodu terminal yerine yalnızca çıktı gösteren bir panel üzerinden çalıştıran bazı eklentiler kullanıcı girişi konusunda sorun çıkarabilir.
Bu nedenle başlangıçta Run Python File in Terminal yöntemini tercih etmek yararlıdır.
Eğer Visual Studio Code Python’u hiç çalıştırmıyorsa VS Code Python’u Görmüyor: Neleri Kontrol Etmelisiniz? rehberimizden yararlanabilirsiniz.
Dosyayı kaydetmeden çalıştırmak
Kodda değişiklik yaptıktan sonra dosyayı kaydettiğimizden emin olmalıyız.
Windows’ta bunun için genellikle Ctrl + S kısayolunu kullanabiliriz.
Kısayolları daha ayrıntılı öğrenmek için Windows Klavye Kısayolları sayfamıza da göz atabilirsiniz.
Uygulama: Kendi Python çalışma kartımızı hazırlayalım
Şimdi öğrendiklerimizi tek bir küçük programda birleştireceğiz.
Amacımız kullanıcıdan ismini, öğrenmek istediği konuyu ve çalışma süresini almak.
Ardından bu bilgileri düzenli bir kart şeklinde ekranda göstereceğiz.
Programda ayrıca çalışmanın henüz tamamlanmadığını belirten bir mantıksal değer kullanacağız.
Böylece değişkenleri, veri türlerini, input() fonksiyonunu ve tür dönüşümünü aynı örnek üzerinde görebileceğiz.
Visual Studio Code’da yeni bir dosya oluşturalım.
Dosyanın adını şöyle belirleyelim:
calisma_karti.py
Şimdi aşağıdaki kodu yazalım:
print("=== PYTHON ÇALIŞMA KARTI ===")
ad = input("Adınız: ")
konu = input("Bugün ne öğreneceksiniz? ")
sure_metni = input("Kaç dakika çalışacaksınız? ")
sure_dakika = int(sure_metni)
tamamlandi = False
print()
print("=== ÇALIŞMA BİLGİLERİ ===")
print("Ad:", ad)
print("Konu:", konu)
print("Süre:", sure_dakika, "dakika")
print("Tamamlandı mı?", tamamlandi)
print("Süre değişkeninin türü:", type(sure_dakika))Programı çalıştıralım.
Örneğin aşağıdaki bilgileri girelim:
Adınız: Deniz
Bugün ne öğreneceksiniz? Python
Kaç dakika çalışacaksınız? 25Programın sonuç bölümünde şunları göreceğiz:
=== ÇALIŞMA BİLGİLERİ ===
Ad: Deniz
Konu: Python
Süre: 25 dakika
Tamamlandı mı? False
Süre değişkeninin türü: <class 'int'>Peki programın içinde neler gerçekleşti?
İlk aşama: print() ile başlangıç başlığını ekrana yazdırdık.
İkinci aşama: Üç farklı input() çağrısıyla kullanıcıdan bilgi aldık.
Üçüncü aşama: Süre bilgisini önce metin olarak sakladık, ardından int() ile tam sayıya dönüştürdük.
Dördüncü aşama: Çalışmanın henüz tamamlanmadığını belirtmek için False değerini kullandık.
Son aşama: Bütün bilgileri print() komutlarıyla kullanıcıya gösterdik.
Buradaki boş print() satırı ise ekranda bir boş satır oluşturarak sonuç bölümünü daha okunaklı hâle getirdi.
Bu basit programda henüz koşul, döngü veya dosya kaydetme işlemi bulunmuyor.
Yani uygulamayı kapattığımızda girdiğimiz bilgiler kalıcı bir dosyaya kaydedilmiyor.
Bunun nedeni programın eksik hazırlanması değil; henüz o konuları öğrenmemiş olmamız.
Eğitim ilerledikçe bu tür uygulamalara karar verme, tekrar eden işlemler ve kalıcı kayıt özellikleri ekleyebilecek düzeye geleceğiz.
Şimdilik önemli olan, farklı türlerdeki bilgileri bir araya getirerek çalışan bir program yazabilmemiz.
Kendinizi deneyin: Küçük alıştırmalar
Bir programlama dilini öğrenmenin en etkili yollarından biri, hazır örnekleri yalnızca çalıştırmakla yetinmeyip değiştirmektir.
Bu nedenle dersten ayrılmadan önce birkaç küçük alıştırma yapalım.
Alıştırma: Ürün bilgileri
urun.py adında bir dosya oluşturun.
Ürün adı, fiyatı ve stok miktarı için üç ayrı değişken tanımlayın.
Ürün adını str, stok miktarını int, fiyatı ise float olarak saklayın.
Sonra bütün bilgileri print() ile ekrana yazdırın.
Örneğin ürününüz bir klavye olabilir.
Burada önemli olan fiyatın sayısal türde, ürün adının ise metin türünde saklanmasıdır.
Alıştırma: Kullanıcı tanıtımı
Kullanıcının adını ve yaşadığı şehri soran bir program oluşturun.
Ardından şu biçimde bir çıktı üretin:
Merhaba Ece
Yaşadığınız şehir: İzmirBu alıştırmada input() ve print() kullanmanız yeterli.
Alıştırma: Tür kontrolü
Aşağıdaki değerleri farklı değişkenlere atayın:
kod = "1234"
adet = 12
fiyat = 79.5
aktif = TrueArdından type() kullanarak her değişkenin veri türünü ekrana yazdırın.
Özellikle kod değişkeninin neden str türünde olduğunu düşünün.
Alıştırma: Kendi çalışma kartınızı geliştirin
Hazırladığımız çalışma kartına yeni bir bilgi ekleyin.
Örneğin kullanıcıdan çalışma yapacağı günü de isteyin.
Ardından kartın sonuç bölümünde günü de gösterin.
Bu değişiklik için yeni bir konu öğrenmeniz gerekmiyor.
Yalnızca bir input() satırı ve bir print() satırı eklemeniz yeterli.
Bu küçük çalışmalar sayesinde öğrendiğimiz kavramlar yalnızca teoride kalmayacak.
Kendi yazdığımız kodun ekranda nasıl sonuç oluşturduğunu göreceğiz.
Kısaca
Python’da değişkenler, değerlere isim vererek onları programın farklı bölümlerinde kullanmamızı sağlar.
= işaretiyle bir değişkene değer atayabilir, daha sonra bu değeri değiştirebiliriz.
Ancak her bilgi aynı türde değildir.
Metinler için str, tam sayılar için int, ondalıklı sayılar için float ve doğru-yanlış değerleri için bool kullanılır.
None ise bir değerin bulunmadığını belirtmek için kullanılabilen özel bir değerdir.
type() fonksiyonu, bir değerin hangi veri türünde olduğunu öğrenmemizi sağlar.
input() ile kullanıcıdan bilgi alabiliriz. Ancak bu fonksiyonun döndürdüğü bilginin metin olduğunu unutmamalıyız.
Sayısal işlemler için gerekli durumlarda int() veya float() gibi dönüşüm fonksiyonlarından yararlanırız.
Bu derste ayrıca değişken isimlerinin nasıl seçilmesi gerektiğini, sık karşılaşılan başlangıç hatalarını ve kullanıcıdan bilgi alan küçük bir Python programının nasıl hazırlanacağını gördük.
En önemlisi, program yazmanın yalnızca komutları ezberlemekten ibaret olmadığını anlamaya başladık.
Önce hangi bilgiyi kullanacağımızı belirliyoruz.
Sonra bu bilginin türünü düşünüyoruz.
Ardından o bilgiyi değişkenlerde saklayarak ihtiyacımız olan yerde kullanıyoruz.
Bugün ilk değişkenlerimizi oluşturduk.
Bir sonraki derste ise bu veriler üzerinde matematiksel işlemler ve karşılaştırmalar yapmayı öğreneceğiz.
Böylece programlarımız yalnızca bilgi saklamakla kalmayacak; bu bilgilerle hesaplamalar da gerçekleştirebilecek.
Python öğrenirken en değerli alışkanlık, kodun ne yaptığını anlamadan bir sonraki satıra geçmemektir.
PYTHON EĞİTİM SERİSİ · DERS 01 / 16
Sonraki: Operatörler ve Karşılaştırmalar →
Yeni rehberleri kaçırmayın
Yeni teknoloji rehberleri ve pratik çözümler e-postanıza gelsin.




