Professional Documents
Culture Documents
Python-Giriş
0-30
Python-Giriş
• Python, nesne yönelimli, yorumlamalı, birimsel
ve etkileşimli yüksek seviyeli bir programlama
dilidir.
• Kullanımı kolay ve hızlıdır.
• Kodsal söz dizimi daha okunaklı ve daha
temizdir.
• Ayrı bir derleyiciye ihtiyaç duymaz.
0-31
Python-Kurulum
• https://www.python.org/downloads/
0-32
Python-Programları Kaydetme ve
Çalıştırma
Python programlama dilini öğrenmeye yeni
başlayan Windows kullanıcıları için en uygun
metin düzenleyici IDLE’dır. Başlat > Tüm
Programlar > Python3.10 > IDLE (Python
GUI) yolunu takip ederek IDLE’a
ulaşabilirsiniz.
0-33
Python
IDLE’ı açtığınızda şöyle bir ekran karşınıza
çıkacaktır:
0-34
Python
Dikkat ederseniz beyaz ekranın en sonunda
bordo renkli bir >>> işareti var.
0-35
Python
Bir önceki ekranda sol üst köşede File
[Dosya] menüsü vardı. Oraya tıklayın ve
menü içindeki New Window [Yeni Pencere]
düğmesine basın. Şöyle bir ekran karşınıza
çıkacaktır:
0-36
Python
İşte Python kodlarımızı bu beyaz ekrana
yazacağız. Şimdi bu ekrana şu satırları
yazalım:
0-37
Python
Bu noktadan sonra yapmamız gereken şey
dosyamızı kaydetmektir.
Bunun için File > Save as yolunu takip
ederek programımızı masaüstüne
randevu.py adıyla kaydediyoruz.
0-38
Python
Şu anda programımızı yazdık ve kaydettik.
Artık programımızı çalıştırabiliriz.
Bunun için IDLE’da Run > Run Module
yolunu takip etmeniz veya kısaca F5 tuşuna
basmanız yeterli olacaktır. Bu iki yöntemden
birini kullanarak programınızı
çalıştırdığınızda şöyle bir çıktı elde
edeceksiniz:
0-39
Python
0-40
Python
İlk Python programınızı yazıp çalıştırdık.
Eğer çalıştıramadıysanız veya yukarıdaki
çıktı yerine bir hata mesajı aldıysanız
muhtemelen kodları yazarken yazım hatası
yapmışsınızdır. Kendi yazdığınız kodları
buradaki kodlarla dikkatlice karşılaştırıp
tekrar deneyin.
0-41
Python Giriş-Çıkış İşlem ve Komutları
• Input Komutu
• Print Komutu
0-42
Input Fonksiyonu:
Kullanıcıdan bilgi almak için kullanılır.
Ör: Kullanıcıya ismini sorup “Merhaba İsim” yazdıran kodlar.
isim = input("İsminiz nedir? ")
print("Merhaba", isim)
Çıktı:
İsminiz nedir? Niyazi
Merhaba Niyazi
0-43
Input Fonksiyonu:
Ör: Kullanıcın girdiği iki sayıyı toplayan kodlar:
deger1 = int(input("İlk sayıyı giriniz:"))
deger2 = int(input("İkinci sayıyı giriniz:"))
toplam = deger1 + deger2
print(deger1, "+", deger2, "=", toplam)
Çıktı:
İlk sayıyı giriniz: 5
İkinci sayıyı giriniz: 52
5 + 52 = 57
0-44
İnput Komutunun Kullanımı
0-45
Print Fonksiyonu:
Ekranda görüntülenmesini istediğimiz tüm bilgi ya
da sonuçları ekrana yazdırabilmek için print()
fonksiyonunu kullanırız. Parantez içinde yazılan
bilgilerin her birine parametre deriz. Birden fazla
bilgi (parametre) yazacaksak aralarına virgül
koymamız gerekir.
0-46
Print Fonksiyonu:
Örneğin:
>>>print(“Merhaba Dünya”)
Merhaba Dünya
>>>print(“Toplamı :”, 10+23)
Toplamı : 33
>>>a=4
>>>a = 5
>>>print(a)
5
0-47
Print Fonksiyonu:
Örnek:
>>>b ="4"
>>>c=4
>>>d=b+c
>>>print(d)
0-48
Print Fonksiyonu:
Örnek:
>>>b ="4"
>>>c=4
>>>d=b+c
>>>print(d)
Hata verir. b string c integer sayı. ikisi toplanamaz.
>>>print(“Bilgisayar”,”Bilimi”,”Kodlama”)
Bilgisayar Bilimi Kodlama
→Açıklaması: Virgüller ifadelerin arasına birer boşluk
bırakır.
0-49
Print Komutunun Kullanımı
x=10;
x tamsayı tipindedir.
print(x)
0-50
Print Komutunun Kullanımı
Ekran Çıktısı:
print(" Python "*3 )
Python Python Python
0-51
Print Komutunun Kullanımı
isim = 'Buğra'
yas = 18
print(f'Onun adı {isim} ve o {yas} yaşında.')
#Onun adı Buğra ve o 18 yaşında.
0-52
Yorum Satırları
# tek bir satır için
"""
0-53
Python Giriş-Çıkış İşlem Örneği
Örnek 1: Bir karenin çevresini ve alanını hesaplayan
programı yazalım.
Karenin çevresi = 4a, Karenin Alanı=a2
0-54
Python Giriş-Çıkış İşlem Örneği
Örnek 1: Bir karenin çevresini ve alanını hesaplayan programı
yazalım.
Karenin çevresi = 4a, Karenin Alanı=a2
a=int(input('Kenar uzunluğu:'))
Cevre=4*a
Alan=a**(2)
0-56
Python Giriş-Çıkış İşlem Örneği
Örnek 2: Bir küpün alanını hesaplayan programı
yazalım.
Küpün alanı = 6a2
a=int(input('Kenar uzunluğu:'))
Alan=6*a**2
0-57
Python Giriş-Çıkış İşlem Örneği
Örnek 3: Bir dairenin çevresini ve alanını
hesaplayan programı yazalım.
0-58
Python Giriş-Çıkış İşlem Örneği
Örnek 3:
r = int(input("Dairenizin yarı çapını giriniz : "))
pi=3.14
alan =round(pi*(r**(2)),1)
cevre = round(pi*2*r,1)
print("Dairenizin alanı : " , alan)
print("Dairenizin çevresi : " , cevre)
0-59
Python Giriş-Çıkış İşlem Örneği
Örnek 4: Bir dikdörtgenin çevresini ve alanını
hesaplayan programı yazalım.
Dikdörtgen çevresi = 2x+2y, Dikdörtgenin Alanı=xy
0-60
Python Giriş-Çıkış İşlem Örneği
Örnek 4:
x = int(input("Dikdörtgeninizin uzun kenarını giriniz : "))
y = int(input("Dikdörtgeninizin kısa kenarını giriniz : "))
alan = (x*y)
cevre = ((x*2)+(y*2))
print ("Dikdörtgeninizin alanı = ",alan)
print ("Dikdörtgeninizin çevresi = ",cevre )
0-61
Python
int() : Sayı değerli bir karakter dizisini veya kayan
noktalı sayıyı tamsayıya (integer) çevirir.
float() : Sayı değerli bir karakter dizisini veya
tamsayıyı kayan noktalı sayıya (float) çevirir.
str() : Bir tamsayı veya kayan noktalı sayıyı
karakter dizisine (string) çevirir.
complex() : Herhangi bir sayıyı veya sayı değerli
karakter dizisini karmaşık sayıya (complex) çevirir.
0-62
Parametreler
\n parametresi: Bu parametreye newline adı verilir.
print() fonksiyonu içerisinde kullanıldığında ilgili
yerden bir alt satıra geçiş yapar.
Ör:
>>>print("bilgisayar bilimi")
bilgisayar bilimi
0-63
Parametreler
→Normal olarak çıktımız bilgisayar, boşluk
karakteri ve bilimi şeklinde. Ancak \n karakterini
araya koyduğumuzda ilgili yerden bir alt satıra
geçiş yapacaktır. Yukarıdaki örneği bir de şu
şekilde yazalım.
>>>print("bilgisayar\nbilimi")
bilgisayar
bilimi
0-64
Parametreler
→Görüldüğü üzere \n parametresini bilgisayar
ifadesinin hemen sonuna koyduk ve böylece tam
da oradan satır başına geçiş yapmış olduk.
\t parametresi: print() fonksiyonu içerisinde
kullanıldığında ilgili yerden bir tab kadar boşluk
bırakır.
Ör:
>>>print("Ocak\tŞubat\tMart")
Ocak Şubat Mart
0-65
Parametreler
sep parametresi: İngilizcede separator (ayırıcı,
ayraç) kelimesinin kısaltmasıdır.
Ör:
>>>print("www.", "google.", "com", sep="+")
www.+google.+com
>>>print(“30”,”04”,”2018”, sep=”/”)
30/04/2018
0-66
Parametreler
FORMATLAMA: Bir stringin içine önceden
tanımlanan bir veri veya değişken yerleştirebiliriz.
Bu işleme formatlama denir. Bunun için süslü
parantez kullanmalıyız.
Ör:
a=3
b=4
print("{}+{}'ün toplamı {}'dir".format(a,b,a+b))
‘3+4'ün toplamı 7'dir
0-67
Python ile Programlamaya Giriş
Python’da Kullanılan Anahtar Kelimeler
Komut İşlev
and Mantıksal operatördür. ‘VE’ anlamına gelir.
as Bir modül veya nesneyi farklı bir isimle temsil etmek için kullanılır.
Basılacak Çıkış
Örnek Kod Ekran Çıktısı
Karakter Karakteri
' (Tek tırnak) \' print(" Ali\'nin Evi ") Ali'nin Evi
'' (Çift tırnak) \'' print(" Ali: \"Merhaba\" ") Ali: "Merhaba"
x
Bir alt satıra geç \n print("x\ny")
y
x y
Bir tab boşluk \t print("x\ty")
Alarm \a
0-22
Python Değişken Tanımlamaları ve Veri Tipleri
0-23
Python Değişken Tanımlamaları ve Veri Tipleri
Değişken
Veri Tipi Açıklama
tanımlama
x=36 int Tam sayı tipinde x isimli bir değişken tanımlandı.
Tam sayı tiplerinde x,y,z isimli değişkenler
x=y=z=36 int
tanımlandı.
Değişken Veri
Açıklama
tanımlama Tipi
X bool veri tipinde olup, bu veri tipindeki
değişkenler True/False değerini alır.
a=30
X=True bool
b=40
print(a==b)
0-26
Python Değişken Tanımlamaları ve Veri Tipleri
0-27
Değişkenlere İsim Verme Kuralları
2. Değişken adlarında alt çizgi ‘_’ dışında, boşluk veya diğer özel karakterler
bulunmamalıdır.
(. , ? ! : ; @ + - = % & karakterleri gibi. )
3. Python değişken isimlerinde Türkçe karakter kabul etse de, değişken
adlandırılırken Türkçe karakter kullanılmaması gerekir.
0-28
İki değişkenin İçeriğini Birbirine Aktarma
İki değişkenin içeriğini birbirine aktarımına yer
değiştirme denir.
Python’da değişkenler doğrudan birbirine
aktarılabiliyorken, diğer programlama
dillerinde bu işlem için üçüncü bir değişken
gerekir.
Python’da ise bu işlem tek satır kod ile
çözülebilir.
0-29
İki değişkenin İçeriğini Birbirine Aktarma
Örnek:
0-30
Veri Tipi Dönüşümü
Değişkenlere değer aktarırken veri tipi
uyumuna dikkat etmek gerekir.
0-31
Veri Tipi Dönüşümü Örnekleri
pi=int(3.14) 3
print(pi)
x=100 100.0
print(float(x))
Pi=3.14 Pi sayisi:3.14
print("Pi sayisi:"+str(Pi))
0-32
Enum Sabiti
Kullanıcının tanımladığı sıralı semboller
kümesidir.
sabit_adi=Enum(‘sabit_adi’,[X,Y,Z,…])
0-33
ÖRNEK:
Bir yarı-yılın aylarının rakamsal karşılığını veren
Python programını yazınız.
OCAK:1
ŞUBAT:2
MART:3
NİSAN:4
MAYIS:5
HAZİRAN:6
0-34
ÇÖZÜM:
from enum import Enum
aylar=Enum('aylar',['OCAK','ŞUBAT','MART','NİSAN',
'MAYIS','HAZİRAN'])
print("OCAK:",aylar.OCAK.value)
print("ŞUBAT:",aylar.ŞUBAT.value)
print("MART:",aylar.MART.value)
print("NİSAN:",aylar.NİSAN.value)
print("MAYIS:",aylar.MAYIS.value)
print("HAZİRAN:",aylar.HAZİRAN.value)
0-35
EKRAN ÇIKTISI:
OCAK: 1
ŞUBAT: 2
MART: 3
NİSAN: 4
MAYIS: 5
HAZİRAN: 6
0-36
ÖRNEK:
Dünya üzerindeki kıtaları yüzölçümlerine göre
büyükten küçüğe sıralayan Python programını
yazınız.
0-37
ÇÖZÜM:
from enum import Enum
kıtalar=Enum('kıtalar',['Asya','Afrika','KuzeyAmerika',
'GüneyAmerika', 'Antartika', 'Avrupa', 'Avustralya'])
print("Asya:",kıtalar.Asya.value)
print("Afrika:", kıtalar.Afrika.value)
print("KuzeyAmerika:", kıtalar.KuzeyAmerika.value)
print("GüneyAmerika:", kıtalar.GüneyAmerika.value)
print("Antartika:", kıtalar.Antartika.value)
print("Avrupa:", kıtalar.Avrupa.value)
print("Avustralya:", kıtalar.Avustralya.value)
0-38
EKRAN ÇIKTISI:
Asya: 1
Afrika: 2
KuzeyAmerika: 3
GüneyAmerika: 4
Antartika: 5
Avrupa: 6
Avustralya: 7
0-39
Python - Operatörler
*Aritmetiksel Operatörler
*Mantıksal Operatörler
*Karşılaştırma Operatörler
*Bit İşlem Operatörler
Tamsayı
// x//y operator.floordiv(x,y)
Bölme
Matris
@ x@y operator.matmul(x,y)
Çarpma
0-41
Karşılaştırma Operatörleri
Python
İşlem Gösterim Sonuç
Eşdeğeri
0-43
Bit İşlem Operatörleri
Bitsel ÖzelVEYA
^ x^y operator.xor(x,y)
(XOR)
0-44
Mantıksal Operatörler
Mantıksal VEYA OR
Mantıksal VE AND
0-45
Örnekler
İşlem Adı Örnek Sonuç
24/5 4.8
Bölme
24//5 4
X=Y=5
X=5
Ata = (Çoklu atama
Y=5
yapılabilir)
0-47
ÖRNEK 1:
X=Y=5
X*=6
Y/=X
print("X=",X,"\tY=",Y)
0-48
ÇÖZÜM 1:
X=Y=5
X*=6
Y/=X
print("X=",X,"\tY=",Y)
X= 30 Y= 0.16666666666666666
0-49
ÖRNEK 2:
x,y,z=8,4,3;
print(x%y);
print(x%z);
print(y%z);
0-50
ÇÖZÜM 2:
x,y,z=8,4,3;
print(x%y);
print(x%z);
print(y%z);
0
2
1
0-51
Arttırma (++) ve Azaltma (--)
Operatörleri
Python dilinde kullanılmaz.
0-52
ÖRNEK 3:
Aşağıdaki Program parçasının ekran çıktısı ne
olur?
a=b=6
c=3
c/=b
print(a,b,c);
a-=c
c*=4
print(a,b,c);
0-53
EKRAN ÇIKTISI:
6 6 0.5
5.5 6 2.0
0-54
ÖRNEK 4:
Aşağıdaki program parçalarının ekran çıktıları ne
olur?
Karşılaştırma Sonuç
print(6<3)
print(5>8)
print(10<=10)
print(12>=15)
print(1==1)
print(0!=0)
0-55
ÖRNEK 4:
Aşağıdaki program parçalarının ekran çıktıları ne
olur?
Karşılaştırma Sonuç
print(6<3) False
print(5>8) False
print(10<=10) True
print(12>=15) False
print(1==1) True
print(0!=0) False
0-56
Mantıksal Operatörler
X=4; Y=Z=6
Mantıksal VE and
(X>Y) and (Z>X)
0-57
Mantıksal Operatörler
X=4; Y=Z=6
Mantıksal VE and False
(X>Y) and (Z>X)
0-58
ÖRNEK 5:
Aşağıdaki program parçalarının ekran çıktıları ne
olur?
Karşılaştırma Sonuç
print(not(5<3))
print(5>=8)
print(12!=15)
print(not(3==5))
print(7>=10 or 4>6)
0-59
ÇÖZÜM 5:
Aşağıdaki program parçalarının ekran çıktıları ne
olur?
Karşılaştırma Sonuç
print(not(5<3)) True
print(5>=8) False
print(12!=15) True
print(not(3==5)) True
0-60
ÖRNEK 6:
Kullanıcının girdiği bir sayının tek mi çift mi olduğunu
bulan Python programını yazınız.
0-61
ÇÖZÜM 6:
Kullanıcının girdiği bir sayının tek mi çift mi olduğunu
bulan Python programını yazınız.
X=int(input('X='))
print(X%2 and "Tek" or "Çift")
0-62
Python Dilinde Temel İşlemler
Bit İşlem Operatörleri
Bu operatörler, verilen değerin ikili tabandaki bit
karşılığını alır. Bu bitler üzerinde mantıksal işlem
gerçekleştirirler. Bit işlemlerinde kullanılan
değişkenler tamsayı(int) veri tipinde olmalıdır. Çünkü
diğer veri tipleri kullanılmaz.
0-64
Bit İşlem Operatörleri
Karşılatırma Python
İşlem Operatör Örnek Sonuç
Notasyonu Notasyonu
Bitsel VE
& x VE y x&y 7&9 1
(AND)
Bitsel
VEYA | x VEYA y x|y 7|9 15
(OR)
Bitsel
ÖzelVEYA ^ x ÖzelVEYA y x^y 7^9 14
(XOR)
Bitsel
DEĞİL ~ Ters Çevir x ~x ~7 -8
(NOT)
Sola 1 bit
<< x << basamak x << değer 7 << 1 14
kaydırma
Sağa 1 bit
>> x >> basamak x >> değer 7 >> 1 3
kaydırma
0-65
Tablo: (Onlu Sistem-İkili Sistem Karşılıkları)
0 0 0 0 0 1
1 0 1 0 1 0
0 1 1 0 1 1
1 1 1 1 0 0
0-67
ÖRNEK 1:
Aşağıdaki programın çalıştırılmasından sonra ekran
çıktısı ne olur?
x=1
y=2
a=x&y
b=x|y
c=y>>1
d=y<<2
print(a,b,c,d)
0-68
EKRAN ÇIKTISI
0318
0-69
Python Operatörlerinin Öncelik Sıralamaları
Öncelik Sırası Operatör veya İşlem Açıklama
** Üs Alma
0-70
Python Operatörlerinin Öncelik Sıralamaları
Öncelik Sırası Operatör veya İşlem Açıklama
^ Bitsel XOR
| Bitsel OR
and Mantıksal VE
or Mantıksal VEYA
0-71
ÖRNEK 2:
A=-2*4%3+2**(3*2+1) ifadesinin sonucunda A
değişkeninin değeri ne olur?
0-72
ÖRNEK 2:
A=-2*4%3+2**(3*2+1) ifadesinin sonucunda A
değişkeninin değeri ne olur?
ÇÖZÜM:
Öncelikle işlem sırasına bakılır.
1+128 =129
0-73
Matematiksel İfadelerin Kodlanması
Bir matematiksel ifade birden fazla işlem içerebilir.
Matematiksel ifade Python dilinde kodlanırken birden
fazla operatör kullanılır. Böyle durumlarda işlemlerin
öncelik sırasına bakılır.
0-74
ÖRNEK 3:
Aşağıdaki matematiksel ifadelerin Python kodlamasını
yazınız.
0-75
ÇÖZÜM 3:
x=(3*y**(2/3))/4
x=(3*y**(2/3))/4
x=math.sqrt(y)+z**4
0-76
ÖRNEK 4:
Üç kenar uzunluğu verilen üçgenin alanını hesaplayan
Python uygulamasını yazalım.
0-77
ÖRNEK 4:
Üç kenar uzunluğu verilen üçgenin alanını hesaplayan
Python uygulamasını yazalım.
0-78
ÇÖZÜM 4:
Üç kenar uzunluğu verilen üçgenin alanını hesaplayan
Python uygulamasını yazalım.
a=int(input('a kenarı:'))
b=int(input('b kenarı:'))
c=int(input('c kenarı:'))
u=(a+b+c)/2
Alan=(u*(u-a)*(u-b)*(u-c))**0.5
print('Alan=',Alan)
0-79
EKRAN ÇIKTISI
a kenarı:5
b kenarı:12
c kenarı:13
Alan=30.0
0-80
ÖRNEK 5:
Maaşı ve zam oranı girilen işçinin zamlı maaşını
hesaplayan Python kodunu yazınız.
0-81
ÖRNEK 5:
Maaşı ve zam oranı girilen işçinin zamlı maaşını
hesaplayan Python kodunu yazınız.
Maaş=2000
Zam=%15 (0.15)
0-82
ÇÖZÜM 5:
Maaşı ve zam oranı girilen işçinin zamlı maaşını
hesaplayan Python kodunu yazınız.
print(yeniMaas)
0-83
EKRAN ÇIKTISI:
Maaşı ve zam oranı girilen işçinin zamlı maaşını
hesaplayan Python kodunu yazınız.
0-84
Python Dilinde Temel İşlemler ve
Karar Yapıları
Python ile Karar Yapıları
Normal bir programın işleyişinde, yazdığımız kod
satırları yukarıdan aşağı doğru işleme tabi olur.
0-3
if: YAPISI
if sorgularında koşuldan sonra ‘:’
kullanılmalıdır. Büyük/küçük harf ayrımını
dikkat edilmelidir. (If, IF yazmamaya özen
gösterilmelidir.)
0-4
KOD BLOĞU: GİRİNTİ MEKANİZMASI
Programlama dillerinde kod bloklarını
belirlemek için ya {…} süslü parantezler
(C/C++, Java), ya da begin … end (Delphi)
ifadeleri kullanılırken Python’da ise girinti
mekanizması kullanılır.
0-6
ÇÖZÜM 6:
a=int(input('Sayı gir:'))
if(a>0):
print("Pozitif")
if(a<0):
print("Negatif")
if(a==0):
print("Sıfır")
0-7
ÖRNEK 7:
Üç sayı içerisinden en büyük olanı bulan
programı yazınız.
0-8
ÇÖZÜM 7:
print("Üç sayı giriniz:")
a=int(input('a:'))
b=int(input('b:'))
c=int(input('c:'))
maksimum=a
if b>maksimum:
maksimum=b
if c>maksimum:
maksimum=c
print("En büyük sayi",maksimum)
0-9
if: else: YAPISI
Koşul yanlış olduğu durumda ne yapılmalıdır?
if test edeceğimiz ifade:
eğer test edilen ifade doğru ise bu bölüm çalışır
else:
eğer test edilen ifade yanlış ise bu bölüm çalışır
0-10
ÖRNEK 8:
Dışarıdan girilen nota göre öğrencinin geçip
geçmediğini ekrana yazdıran programı
kodlayınız.
0-11
ÇÖZÜM 8.1:
puan=int(input('Sınav Notu:'))
if puan>=50:
print("Geçti")
else:
print("Kaldı")
0-12
ÇÖZÜM 8.2:
puan=int(input('Sınav Notu:'))
print ("Geçti" if puan>=50 else "Kaldı")
0-13
if: elif: else: YAPISI
Bu yapı için ilk önce if ifadesi olmalıdır.
0-14
ÖRNEK 9:
uzaybilimi=input('Makemake, Neptun, 4-Vesta, VY-Canis-Majoris, birini
giriniz:')
0-15
ÖRNEK 9:
uzaybilimi=input('Makemake, Neptun, 4-Vesta, VY-Canis-Majoris, birini
giriniz:')
if uzaybilimi == "Makemake":
print("Cuce Gezegen.")
elif uzaybilimi == "Neptun":
print("Gezegen.")
elif uzaybilimi == "4-Vesta":
print("Asteroid.")
elif uzaybilimi == "VY-Canis-Majoris":
print("Yildiz.")
else:
print("Yanlis Giris.")
0-16
ÖRNEK 10:
100’lük sisteme göre girilen başarı notunu harfli
sisteme çeviren kodu yazınız.
Kriterler:
Girilen not 90 ve üzeri ise AA
80-89 BA
70-79 BB
60-69 CB
50-59 CC
50’den aşağı ise FF şeklinde olacaktır.
0-17
ÇÖZÜM 10:
puan=int(input('Sınav Notu:'))
if puan >= 90:
print("AA")
elif puan >= 80:
print("BA")
elif puan >= 70:
print("BB")
elif puan >= 60:
print("CB")
elif puan >= 50:
print("CC")
else:
print("FF")
0-18
ÖRNEK 11:
Sisteme giriş sağlayan, kullanıcı adı ve şifrenin
doğruluğuna karar veren yazılım.
0-19
ÇÖZÜM 11:
0-20
ÖRNEK 12:
Aşağıdaki semptom tablosunda, insanlarda görülen bir takım
benzer semptomlara dayanarak Nezle, Alerji, Grip veya Kovid-
19 gibi benzer hastalıkların teşhisine yönelik veriler
sunulmaktadır. Bu tabloya dayanarak bir kişiden alınan
semptom verilerine (1: semptom var, 0: semptom yok)
dayanarak o kişinin hangi hastalığa yakalanmış olabileceğini
tahmin eden kodu Python’da yazın.
0-21
ÖRNEK 12:
0-22
ÇÖZÜM 12:
burun_akinti=0
hapsirik=0
hirilti=0
goz_kizarik=0
kasinti=0
bas_bogaz_agri=0
nefes_darligi=1
ani_ates=1
halsizlik=1
kuru_oksuruk=1
if burun_akinti==1 and hapsirik==1 and hirilti==1 and goz_kizarik==1 and
kasinti==1 and bas_bogaz_agri==1:
print("Nezle şüphesi!")
0-23
ÇÖZÜM 12:
elif hapsirik==1 and hirilti==1 and goz_kizarik==1 and kasinti==1 and
kuru_oksuruk==1:
print("Alerji şüphesi!")
elif bas_bogaz_agri==1 and ani_ates==1 and halsizlik==1 and kuru_oksuruk==1:
print("Grip şüphesi!")
elif nefes_darligi==1 and ani_ates==1 and halsizlik==1 and kuru_oksuruk==1:
print("Kovid-19 şüphesi!")
else:
print("Nezle, alerji, grip veya Kovid-19 değil")
0-24
ÖRNEK 13:
4 işlemi yapan bir hesap makinesi
programını yazınız.
0-25
ÇÖZÜM 13:
x=int(input('Birinci sayı:'))
y=int(input('İkinci sayı:'))
op=input('islem:')
if op=='+':
z=x+y
elif op=='-':
z=x-y
elif op=='*':
z=x*y
elif op=='/':
z=x/y
else:
print("Hatali Seçim")
print("Sonuç=",z)
0-26
Python ile Döngüler
Python ile Döngüler
Döngüler, programlamanın en temel yapılarıdır.
0-28
Python ile Döngüler
Python programlama dilinde kullanılan 2 ana
döngü tipi vardır;
DÖNGÜ TİPLERİ
1. While Döngüsü
2. For Döngüsü
0-29
WHILE DÖNGÜSÜ
While döngüsünün yapısı şu şekildedir:
while koşul:
Blok işlemleri
x=100;
while x<=110:
print(x)
x=x+1
print("Islem bitti..")
0-32
EKRAN ÇIKTISI:
100
101
102
103
104
105
106
107
108
109
110
Islem bitti..
0-33
ÖRNEK 3:
Aşağıdaki program parçasının ekran çıktısı ne olur?
x=110;
while x>=100:
print(x)
x=x-1
print("Islem bitti..")
0-34
EKRAN ÇIKTISI:
110
109
108
107
106
105
104
103
102
101
100
Islem bitti..
0-35
ÖRNEK 4:
1’den 100’e kadar olan (100 dahil) çift
sayıların toplamını bulan programı yazınız.
0-36
ÇÖZÜM 4:
x=2
toplam=0
while x<=100:
toplam=toplam+x
x+=2
print("Toplam=",toplam)
Ekran Çıktısı
Toplam= 2550
0-37
SONSUZ DÖNGÜ
Bir döngünün koşulunun belirtildiği kısımdaki
sayacın, döngü içerisinde değiştirilmediğinde,
koşul sürekli sağlanırsa, koşul yerine 0’dan
farklı bir sabit değer yazılmışsa veya koşul
yerine True yazmışsa; bu durumda hiç
bitmeyen yani sonsuz bir döngü oluşur.
0-38
ÖRNEK 5:
X=10;
while X>0:
print(X)
X=10;
while X>0:
print(X)
X=X+1
0-39
ÖRNEK 6:
X=10;
while 10:
print(X)
X=10;
while True:
print(X)
0-40
ÖLÜ DÖNGÜ
Eğer döngüdeki koşul hiç sağlanmazsa
çalışmayan bir döngü elde etmiş oluruz.
Program döngünün içerisine girmez.
0-41
ÖRNEK 7:
X=10;
while X!=10:
X=X-1
print(X)
X=10;
while False:
print(X)
print("Bitti")
0-42
FOR DÖNGÜSÜ
En sık kullanılan döngü tipidir. Eğer döngünün
tekrar sayısı baştan belli ise bu döngü kullanılır.
0-43
FOR DÖNGÜSÜ
range( ) Fonksiyonu: for döngü yapısında
kullanılan bir fonksiyondur.
0-44
range( ) Örnekler
range(4): 0’dan 4’e kadar (4 hariç) sayılar
0-45
in / not in Operatörleri
in/not in Operatörleri: Sıralı yapılarda eleman
sorgulamasında kullanılır.
0-46
index(x) Fonksiyonu
range() fonksiyonu gibi sıralı bir yapı içerisindeki x
elemanının indisini döndürür.
r=range(0, 30, 2)
print(13 in r)
print(12 in r)
print(30 not in r)
print(r.index(20))
print(*r)
0-47
index(x) Fonksiyonu
range() fonksiyonu gibi sıralı bir yapı içerisindeki x
elemanının indisini döndürür.
r=range(0, 30, 2)
print(13 in r) #False
print(12 in r) #True
print(30 not in r) # True
print(r.index(20)) #10
print(*r) #0 2 4 6 8 10 12 14 16 18 20 22 24 26 28
0-48
enumerate() Fonksiyonu
for döngüsünde kullanılan enumerate() fonksiyonu,
elemanların aynı anda hem sembol değerini hem de
sırasını öğrenmek için kullanılır.
0-49
ÖRNEK 8:
Aşağıdaki program parçasının ekran çıktısı ne olur?
0-50
EKRAN ÇIKTISI:
0 Ocak
1 Şubat
2 Mart
3 Nisan
4 Mayıs
5 Haziran
6 Temmuz
7 Ağustos
8 Eylül
9 Ekim
10 Kasım
11 Aralık
0-51
ÖRNEK 9:
0-52
ÇÖZÜM 9:
faktoriyel=1;x=1;
n=int(input('Faktöriyelini hesaplamak için bir sayi girin:'))
for x in range (n):
faktoriyel*=(x+1)
print("Faktöriyel=",faktoriyel)
0-53
break ve continue Komutları
Bu komutlar döngülerde ek kontrol sağlar.
0-54
break Komutu
Bu komut belli bir koşula bağlı olarak for ve while
döngülerini sonlandırmak için kullanılır.
0-55
ÖRNEK 10:
Aşağıdaki program parçasının ekran çıktısı ne olur?
x=1
while x<=20:
print(x)
x=x+1
if x==10:
break
print("Döngüden çıkış yapıldı")
0-56
EKRAN ÇIKTISI:
0-57
continue Komutu
Döngü içerisinde o anki işlemin atlanmasını sağlayıp
bir sonraki işlemden devam edilmesini sağlar.
0-58
ÖRNEK 11:
Aşağıdaki program parçasının ekran çıktısı ne olur?
x=0
while x<20:
x=x+1
if x==5 or x==10:
continue
print(x)
print("Döngüden çıkış yapıldı")
0-59
EKRAN ÇIKTISI:
0-60
ÖRNEK 12:
Aşağıdaki program parçasının ekran çıktısı ne olur?
a=0
for a in range(100):
if(a%2==1):
continue
if(a==50):
break
print(a, end=' ')
0-61
EKRAN ÇIKTISI:
0-62
İÇ İÇE DÖNGÜLER
Birden fazla döngü ve karar yapısı iç içe
kullanılabilir. Sıralama, matris ve tablo gibi iki
veya daha fazla boyutlu işlemlerle ilgili
uygulamalarda iç içe döngüler kullanılır.
0-63
ÖRNEK 13:
Aşağıdaki program parçasının ekran çıktısı ne olur?
a=1;b=5;
while(a<=5):
while(b>=1):
print("#",end='')
b=b-1
b=5
print("")
a=a+1
0-64
EKRAN ÇIKTISI:
0-65
ÖRNEK 14:
Aşağıdaki program parçasının ekran çıktısı ne olur?
for i in range(8):
for j in range(i+1):
print("#",end='')
print("")
0-66
EKRAN ÇIKTISI: Dik Üçgen
0-67
ÖRNEK:
Aşağıdaki program parçasının ekran çıktısı ne olur?
for i in range(8,0,-1):
for j in range(i,0,-1):
print("#",end='')
print("")
0-68
EKRAN ÇIKTISI: Ters Dik Üçgen
0-69
Python - Fonksiyonlar
FONKSİYONLAR
Gelişmiş olan programlar karmaşıktır. Bu
karmaşıklıktan kurtulmak için programı küçük
parçalara bölmeli ve daha sonra bu parçaları
birleştirmeliyiz.
0-2
FONKSİYONLAR
Programda fonksiyon kullanmamızın amacı
tekrar eden kodlardan kurtulmaktır.
Örnek olarak kuvvet hesaplayan bir fonksiyon
kullandığımızda her seferinde kuvvet
hesaplamak gerektiğinde kuvvet işlemlerini
tekrar tekrar yazmaktan kurtuluruz.
0-3
FONKSİYONLARIN SINIFLANDIRILMASI
Fonksiyonları şu şekilde sınıflandırabiliriz:
*Parametreli (dışarıdan değer alan)
veya
Parametresiz (dışarıdan değer almayan)
*Geriye değer döndüren
veya
Geriye değer döndürmeyen
0-4
HAZIR FONKSİYONLAR
Her programlama dili belli amaçlara yönelik
hazır fonksiyonlar içerir. (abs(), sin(), pow() gibi)
0-5
FONKSİYONLARIN TANIMLANMASI
def fonksiyonum():
fonksiyon gövdesi
0-6
FONKSİYONLARIN TANIMLANMASI
Fonksiyon Tanımı Kullanımı Açıklama ve Ekran Çıktısı
#Ekran Çıktısı
Programcı: Mehmet
def fonk_adi(a,b): def Carpim(a,b): #Parametreli, geriye değer
…komutlar carp=a*b döndüren bir fonksiyondur.
…return sonuc return carp
print(Carpim(4,5)) #Ekran Çıktısı
20
0-7
FONKSİYONLARIN TANIMLANMASI
Fonksiyon Tanımı Kullanımı Açıklama ve Ekran Çıktısı
def fonk_adi(): def Toplam(): #Parametresiz, geriye değer
…komutlar a=8 döndüren bir fonksiyondur.
…return sonuc b=15
return a+b #Ekran Çıktısı
print(Toplam()) 23
0-8
pass Komutu
Hiçbir şey yapma komutudur.
0-9
return Komutu
Fonksiyonun geriye döndüreceği değeri
üretmeye yarayan komuttur.
0-10
return Kullanımları
Örnek Komut Dönen değer Açıklama
0-12
ÇÖZÜM 1:
x=int(input('Birinci sayıyı girin:'))
y=int(input('İkinci sayıyı girin:'))
z=int(input('Üçüncü sayıyı girin:'))
def enbuyuk(a,b,c):
return max(a,b,c)
def enkucuk(a,b,c):
return min(a,b,c)
print("En büyük sayı:", enbuyuk(x,y,z))
print("En küçük sayı:", enkucuk(x,y,z))
0-13
EKRAN ÇIKTISI 1:
0-14
lambda Fonksiyonu
Tek satırlık kısa fonksiyonlar tanımlamada
kullanılır.
Kullanım Şekli:
fonksiyon_adi=lambda değişkenler: komut satırı
0-15
ÖRNEK 2:
İki sayının çarpımını hem def hem de lambda
fonksiyonu kullanarak hesaplayalım.
0-16
ÇÖZÜM 2:
carpim=lambda x,y:x*y
print(carpim(5,7))
def carpim(x,y):
return x*y
print(carpim(5,7))
0-17
map Fonksiyonu
Bir grup veriye fonksiyonun değerini nesne
türünde döndürmede kullanılır.
Kullanım Şekli:
map(fonksiyon_adi, liste)
0-19
ÇÖZÜM 3:
def kup(x):
return x**3
sayi=range(1,21) #1-20 arası sayılar
map_sonuc=map(kup, sayi)
print(list(map_sonuc))
0-20
EKRAN ÇIKTISI 3:
0-21
filter Fonksiyonu
Çağırılan fonksiyonun döndürdüğü değerin
True olduğu durumlara göre liste döndürür. Yani
fonksiyona gönderilen değerler içerisinden
istediklerimizi alarak yeni liste oluşturmamızı
sağlar. Yani elimizdeki liste üzerinde filtreleme
yapmamızı sağlar.
Kullanım Şekli:
filter(fonksiyon_adi, liste)
0-22
ÖRNEK 4:
1’den 50’ye kadar olan sayıların içindeki tek
sayıları filtreleyip ekrana yazdıran programı
filter fonksiyonu yardımı ile kodlayalım.
0-23
ÇÖZÜM 4:
def teksayi(x):
return x%2==1
liste=range(1,50)#1-50 arası sayılar
filter_sonuc=filter(teksayi,liste)
print(list(filter_sonuc))
0-24
EKRAN ÇIKTISI 4:
0-25
Matematiksel Fonksiyonlar
Sayılar üzerinde matematiksel işlemler yapmayı
sağlar. Python dilinde bazı fonksiyonlar
standart/yerleşik (built in functions) olarak
tanımlanmıştır.
0-26
Standart matematiksel fonksiyonlar
Fonksiyon Tanım Örnek Çıktı
0-27
ASCII Tablosu
Onlarca (hatta yüzlerce ve binlerce) karakterin
sayılarla eşleştirilmesi gereken bir durumda,
ortak bir eşleştirme düzeni üzerinde uzlaşma
sağlamak hiç de kolay bir iş değildir.
Bu standarda American Standard Code for
Information Interchange, yani ‘Bilgi Alışverişi
için Standart Amerikan Kodu’ veya kısaca
‘ASCII’ adı verildi.
ASCII adı verilen sistem, birtakım sayıların
birtakım karakterlerle eşleştirildiği basit bir
tablodan ibarettir. 0-28
ASCII Tablosu
0-29
ASCII Tablosu
ASCII tablosunda toplam 128 karakterin sayılarla
eşleştirilmiş durumda olduğu görülmektedir. 128 adet
sayı 7 bite karşılık gelir (2**7=128). Yani 7 bit ile
gösterilebilecek son sayı 127’dir. Dolayısıyla ASCII 7
bitlik bir sistemdir.
0-30
ASCII Tablosu
ASCII tablosunu Python yardımıyla kendimiz de
aşağıdaki kodu kullanarak oluşturabiliriz.
for i in range(128):
if i % 4 == 0:
print("\n")
print("{:<3}{:>8}\t".format(i,repr(chr(i))),sep="", end="")
0-31
ASCII Tablosu
0-32
ASCII Tablosu
0-33
ASCII Tablosu
chr(): Bu fonksiyon, bir sayının karakter karşılığını verir.
>>> chr(10)
'\n'
0-34
ASCII Tablosu (0-31)
0-35
ASCII Tablosu
9. sıradaki \t öğesi sekme oluşturan kaçış dizisidir. Aynı
şekilde, 10. sıradaki \n öğesinin satır başına geçiren kaçış
dizisi olduğunu, 13. sıradaki \r öğesinin ise satırı başa alan
kaçış dizisi olduğunu da biliyoruz. Bu tür karakterler
‘basılamayan’ (non-printing) karakterlerdir. Yani mesela
ekranda görüntülenebilen ‘a’, ‘b’, ‘c’, ‘!’, ‘?’, ‘=’ gibi
karakterlerden farklı olarak bu ilk 32 karakter ekranda
görünmez. Bunlara aynı zamanda ‘kontrol karakterleri’
(control characters) adı da verilir. Çünkü bu karakterler
ekranda görüntülenmek yerine, metnin akışını kontrol eder.
Bu karakterlerin ne işe yaradığını şu tabloyla tek tek
gösterebiliriz.
0-36
ASCII Tablosu (0-31)
0-37
ASCII Tablosu
Bunlar birer harf, sayı veya noktalama işareti değil. O yüzden
bu karakterler ekranda görünmez. Ama bir metindeki veri,
satır ve paragraf düzeninin nasıl olacağını, metnin nerede
başlayıp nerede biteceğini ve nasıl görüneceğini kontrol
ettikleri için önemlidirler.
Geri kalan sayılar ise doğrudan karakterlere, sayılara ve
noktalama işaretlerine tahsis edilmiştir:
0-38
ASCII Tablosu
0-39
ASCII Tablosu
32 ile 127 arası sayılarla eşleştirilen karakterler yardımıyla
metin ihtiyaçlarımızın büyük bir bölümünü karşılayabiliriz.
Yani ASCII adı verilen bu eşleştirme tablosu sayesinde
bilgisayarların sayılarla birlikte karakterleri de işleyebilmesini
sağlayabiliriz.
0-40
Standart matematiksel fonksiyonlar
Fonksiyon Tanım Örnek Çıktı
0-41
Sayı Sistemleri
İKİLİ (binary): 0 1
SEKİZLİ (octal): 0 1 2 3 4 5 6 7
ONLU (decimal): 0 1 2 3 4 5 6 7 8 9
ONALTILI (hexadecimal): 0 1 2 3 4 5 6 7
8 9 A B C D E F
0-42
Hexadecimal (Onaltılı) Dönüşüm
Rakam sayısı 10'dan fazla olduğunda İngiliz
alfabesindeki harfler rakam olarak kullanılır.
Örneğin 16 rakamdan oluşan 16'lı sistemin
rakamları sırasıyla 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A,
B, C, D, E ve F'dir (A, sayı değeri onlu sistemde
10 olan, F, sayı değeri onlu sistemde 15 olan bir
rakamdır).
0-43
Hexadecimal (Onaltılı) Dönüşüm
0-44
Standart matematiksel fonksiyonlar
Tabloda örneği verilen standart matematiksel
fonksiyonların güncel listesine
https://docs.python.org/3.10/library/functions.html
adresinden ulaşılabilir.
0-45
math modülünde matematiksel
fonksiyonlar
Fonksiyon Tanım Örnek Çıktı
0-46
math modülünde matematiksel
fonksiyonlar
Fonksiyon Tanım Örnek Çıktı
0-47
math modülünde matematiksel
fonksiyonlar
Fonksiyon Tanım Örnek Çıktı
0-48
Standart matematiksel fonksiyonlar
Tabloda örneği verilen math modülünde yer
alan matematiksel fonksiyonların güncel
listesine
https://docs.python.org/3.10/library/math.html
adresinden ulaşılabilir.
0-49
ÖZYİNELEMELİ FONKSİYONLAR
Kendi kendini çağıran fonksiyonlara
özyinelemeli (recursive) fonksiyonlar denir.
Bu fonksiyonlar algoritma tasarımını basitleştirir,
fakat daha fazla bellek alanı kullanılır.
0-50
ÖRNEK 5: FAKTÖRİYEL HESAPLAMA
Faktöriyel hesabını hem normal fonksiyon hem
de özyinelemeli fonksiyon yardımıyla yapalım.
0-51
ÇÖZÜM 5.1: (normal fonksiyon ile hesap)
#faktöriyel hesaplama (normal)
def fakt(x):
f=1
for x in range(x,0,-1):
f=f*x
return f
#Ana program
x=int(input('Faktöriyel sayısı: '))
print(x, "!=", fakt(x))
0-52
ÇÖZÜM 5.2: (özyinelemeli fonksiyon ile hesap)
#faktöriyel hesaplama (özyinelemeli)
def fakt(x):
if x<=1:
return 1
else:
return (x*fakt(x-1))
#Ana program
x=int(input('Faktöriyel sayısı: '))
print(x, "!=", fakt(x))
0-53
ÖRNEK 6:
Girilen 2 sayı arasındaki tüm asal sayıları bulan
python fonksiyon uygulamasını yapalım.
0-54
ÇÖZÜM 6:
def asalSayılariBul(sayi1, sayi2):
for sayi in range(sayi1, sayi2+1):
if sayi > 1:
for i in range(2, sayi):
if (sayi % i == 0):
break
else:
print(sayi)
sayi1 = int(input('sayı 1:'))
sayi2 = int(input('sayı 2:'))
asalSayılariBul(sayi1, sayi2)
0-55
EKRAN ÇIKTISI 6:
0-56
ÖRNEK 7:
Alınan sayıdan 0'a kadar olan bütün sayıların
toplamını hesaplayan bir recursive fonksiyon yazalım.
0-57
ÇÖZÜM 7:
def toplam(sayi):
if sayi == 1:
return 1
else:
return sayi + toplam(sayi - 1)
0-58
EKRAN ÇIKTISI 7:
0-59
ÖRNEK 8:
Sayıların bir dik üçgen halinde yazdırılmasını sağlayan python
programını yazalım.
0-60
ÇÖZÜM 8:
def ucgen(x):
for i in range(1,x+1):
for j in range(1,i+1):
print(j,end=" ")
print()
ucgen(15)
0-61
EKRAN ÇIKTISI 8:
0-62
Random Modülü
Belirli bir aralıkta rastgele sayıların üretilmesine ihtiyaç
duyulursa Python’ın standart kütüphanesinde bulunan
random adlı bir modülü kullanabilirsiniz.
import random
0-1
Random Modülü
random()
random.random()
0.8064301704207291
0-2
Random Modülü
random() fonksiyonu, kendisini her çalıştırışınızda
farklı bir kayan noktalı sayı üretecektir:
random.random()
0.6825988062501599
0-3
Random Modülü
Mesela bu fonksiyonu kullanarak, 0 ile 1 arası 10 tane
sayı üretelim. Bu sayıları gösterirken de noktadan
sonra yalnızca dört basamak görüntülenmesine izin
verelim:
import random
for i in range(10):
print("{:.4f}".format(random.random()))
0-4
Random Modülü
Ekran Çıktısı:
0.8035
0.3005
0.6399
0.0325
0.9609
0.1304
0.5001
0.6700
0.5336
0.5310
0-5
Random Modülü
uniform()
0-6
Random Modülü
Belirli bir aralıkta kayan noktalı sayılar üretmek
istediğimizde, random() yerine uniform() adlı bir
fonksiyon kullanılacaktır.
random.uniform(0.5, 1.5)
0.811869297595837
0-7
Random Modülü
Bu kod, her çalıştırılışında 0.5 ile 1.5 arası rastgele bir
kayan noktalı sayı üretecektir:
random.uniform(0.5, 1.5)
0.9624863371746406
random.uniform(0.5, 1.5)
0.900446344810926
0-8
Random Modülü
randint()
0-9
Random Modülü
Mesela 45 ile 500 arasında rastgele bir sayı üretmek
istenirse, randint() fonksiyonu şu şekilde kullanılabilir:
random.randint(45, 500)
0-10
Random Modülü
choice()
kardiz = 'istihza'
random.choice(kardiz)
'i’
l
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
0-14
Random Modülü
Şimdi biz shuffle() fonksiyonunu kullanarak öğeleri
karıştıracağız:
random.shuffle(l)
l
[8, 0, 7, 9, 1, 4, 6, 5, 3, 2]
random.randrange(10)
5
0-16
Random Modülü
randrange() fonksiyonunu tek parametre ile
kullanabiliyoruz. Yukarıdaki komutu eğer randint() ile
yazmak istersek şunu yapmamız gerekir:
random.randint(0, 10)
0-17
Random Modülü
randrange() fonksiyonundan farklı olarak, randint()
fonksiyonunu iki parametre ile kullanmamız gerekir.
Eğer bu fonksiyona tek parametre verirsek hata alırız:
random.randint(10)
0-18
Random Modülü
Elbette, eğer istersek randrange() fonksiyonunu da çift
parametre ile kullanarak, farklı bir sayı aralığı belirtme
imkanına sahibiz:
random.randrange(10, 500)
random.randint(10, 500)
0-19
Random Modülü
Bu iki fonksiyon arasındaki ikinci fark ise, rastgele sayı
üretilecek aralığın son değeridir. Bu ifadeyi bir örnekle
anlaşılır hale getirmeye çalışalım:
random.randrange(10, 20)
Bu komut, 10 ile 20 arasında rastgele bir sayı üretir.
Üretilecek en düşük sayı 10 iken, en büyük sayı ise 19
olacaktır. 20 sayısı asla üretilmez.
0-21
Random Modülü
sample()
liste = range(100)
0-22
Random Modülü
100 öğeli bir liste oluşturduk. Şimdi bu listeden 5 tane
rastgele numune alalım:
random.sample(liste, 5)
0-23
ÖRNEK 1:
Negatif bir sayıdan 0'a kadar olan sayıların toplamını
hesaplayan bir recursive fonksiyonu yazalım.
0-24
ÖRNEK 1:
def negatif_toplam(sayi):
if sayi == -1:
return -1
return sayi + negatif_toplam(sayi+1)
0-25
ÖRNEK 1:
0-26
ÖRNEK 2:
Çift bir sayıyı parametre olarak alan ve aldığı sayıdan
0'a kadar olan çift sayıların toplamını yazdıran bir
recursive fonksiyonu yazalım. (Örneğin değer 6 ise
çıktı 6 + 4 + 2 = 12 olmalı)
0-27
ÖRNEK 2:
def cift_sayi_toplam(sayi):
if sayi == 0:
return 0
else:
return sayi + cift_sayi_toplam(sayi - 2)
0-28
ÖRNEK 2:
0-29
ÖRNEK 3:
Girilen Vize ve Final Notunun ortalamasını hesaplayan
programı yazalım.
Oranlar; Vize için %40, Final için %60 olarak alınsın.
0-30
ÖRNEK 3:
vize = input('Vize Notunuz : ')
final = input('Final Notunuz : ')
ortalama=(float(vize)*0.4)+(float(final)*0.6)
print("Ortalama :{0} ".format(ortalama))
0-31
ÖRNEK 3:
0-32
ÖRNEK 4:
Kullanıcının girdiği boy ve ağırlık değerlerine göre
vücut kitle indeksini (VKİ=ağırlık/(boy*boy), boy metre
cinsinden verilmeli) hesaplayalım.
0-33
ÖRNEK 4:
print("Vücut Kitle Endeksi Hesaplama Programı")
boy = float(input("Boy (m):"))
kilo = int(input("Kilo (kg):"))
endeks = kilo/(boy*boy)
if endeks <=18:
print("\n zayıf VKİ:{}".format(endeks))
elif endeks > 18 and endeks <=25 :
print("\n normal VKİ:{}".format(endeks))
elif endeks > 25 and endeks <=30:
print("\n kilolu VKİ:{}".format(endeks))
elif endeks >= 30 and endeks <35:
print("\n obez VKİ:{}".format(endeks))
else:
print("\n ciddi obez VKİ:{}".format(endeks))
0-34
ÖRNEK 4:
0-35
ÖRNEK 5:
1’den kullanıcının girmiş olduğu sayıya kadar olan tek
ve çift sayıların toplamını ayrı ayrı bulan ve sonucu
ekranda gösteren programı yazalım.
0-36
ÖRNEK 5:
sayi = input('Sayıyı Girin : ')
tekToplam=0
ciftToplam=0
for i in range(1,int(sayi)):
if(i%2==0):
ciftToplam+=i
else:
tekToplam+=i
print("Tek Sayıların Toplamı : {0}".format(tekToplam))
print("Çift Sayıların Toplamı : {0}".format(ciftToplam))
0-37
ÖRNEK 5:
0-38
NOT:
Rastgele sayı üretmeyi sağlayan bir modül olan
random, python 1.4 ve üzerinde kullanılabiliyor.
Uygulamanıza import ederek kullanabilirsiniz.
0-39
ÖRNEK 6:
Python ile Sayı Tahmin Oyunu programı yazalım.
Bilgisayar tarafından 1-100 arası rastgele tutulan bir
sayıyı kullanıcının tahmin etmesi istensin ve
kullanıcının kaç tahminde sayıyı bulduğu hesaplansın.
Kullanıcı 0 değerini girdiğinde oyundan çıkış yapılsın.
0-40
ÖRNEK 6:
0-41
ÖRNEK 6:
0-42
Python Tarih İşlemleri
Python’daki bir tarih kendi başına bir veri türü değildir, ancak
tarihlerle tarih nesneleri olarak çalışmak için datetime adlı bir
modülü içe aktarabiliriz.
Örnek:
Datetime modülünü içe aktarın ve geçerli tarihi görüntüleyin:
import datetime
x = datetime.datetime.now()
print(x)
0-43
Date Output
Yukarıdaki örnekteki kodu yürüttüğümüzde sonuç şöyle
olacaktır:
2021-11-23 17:58:01.169571
0-44
Örnek:
import datetime
x = datetime.datetime.now()
print(x.year)
print(x.strftime("%A"))
0-45
Ekran Çıktısı:
2021
Tuesday
0-46
Tarih Objesi Oluşturma
Bir tarih oluşturmak için datetime modülünün datetime () sınıfını
(yapıcı) kullanabiliriz.
0-47
Örnek:
import datetime
x = datetime.datetime(2021, 11, 23)
print(x)
0-48
Ekran Çıktısı:
2021-11-23 00:00:00
0-49
Strftime () Metodu
Datetime nesnesinin tarih nesnelerini okunabilir dizelere
biçimlendirmek için bir yöntemi vardır.
0-50
Örnek:
import datetime
x = datetime.datetime(2018, 6, 1)
print(x.strftime("%B"))
0-51
Ekran Çıktısı:
June
0-52
Tarih Formatlama Parametreleri:
0-53
Tarih Formatlama Parametreleri:
0-54
Tarih Formatlama Parametreleri:
0-55