Erdembayazit.meb.k12.tr



Python Nedir??zgür ve ücretsiz bir programlama dilidir.Guido Van Rossum adl? HollandalI bir programc? taraf?ndan 90'l? y?llar?n ba??nda geli?tirilmeye ba?lanm??t?r. Guido Van Rossum 2005 ile 2012 y?llar? aras?nda Google'da ?al??m??t?r.Ad? "The Monty Python" adl? bir ?ngiliz komedi grubundan esinlenerek konmu?tur.Python kelimesi Türk?e "payt?n" ?eklinde telaffuz edilir.Neden Python?Büyük kurulu?lar (Google, YouTube ve Yahoo! gibi) her zaman Python programc?lar?na ihtiya? duyuyor.Python ile masaüstü, oyun, mobil, web ve a? alanlar?nda programlar yazabilirsiniz. ?rne?in bir youtube video indirme program? veya fizyde ?ark? aray?p dinleme program? yapabilirsiniz.Python kodlar? sade, basit ve h?zl?d?r. Derlenmeye ihtiya? duymaz.Python farkl? i?letim sistemleri üzerinde ?al??abilir. Linux, Windows, Mac OS X, MS-DOS, iOS ve Android vbs...5)Python Sürümleri:Piyasada iki ?e?it Python sürümü vard?r. Python2 ve Python3Python3, Python2'ye g?re daha gü?lüdür ve hatalardan ar?nm??t?r.Python2 ile yaz?lm?? bir program Python3'te ?al??maz. Ayn? ?ekilde Python3 ile yazd???n?z bir program Python2'de ?al??maz.Python'u Kurmak:Python'? kurmak i?in adresine t?klay?n?z.A??lan sayfada Downloads linkini t?klad???n?zda 'Download the latest versiyon for Windows' ba?l??? alt?nda Python'un son sürümü i?eren bir buton g?receksiniz. Bu butona t?klayarak Python'?n son sürümünü bilgisayar?n?za indirebilirsiniz.Python'? farkl? bir i?letim sistemine yüklüyorsan?z ya da eski bir Python sürümü kurmak istiyorsan?z ilgili sayfada gerekli linkler ve bilgilendirmeler mevcuttur.Bu arada Python'?n hangi dizine kuruldu?unu bilmemiz ?nemlidir. Zira kar??la?aca??m?z baz? sorunlar bu dizine gitmemizi gerektirebilir.Python Dosyalar? Nerede?Windows kullan?c?s? iseniz ve e?er siz farkl? bir yere kaydetmemi?seniz Python dosyalar?genellikle C:\Users\Kullanicilar\AppData\Local\Programs\Python dizini i?indedir. Klas?rlerg?zükmüyorsa gizli dosyalar? g?ster se?ene?ini aktifle?tiriniz.Edit?rler: Kod yazmak, saklamak, düzenlemek ve geli?tirmek i?in kulland???m?z programlard?r.IDE Nedir?IDE (Integrated Development Environment), Türk?esiyle Tümle?ik Geli?tirme Ortam?, bilgisayar yaz?l?mc?lar?n?n daha kolay ?ekilde yaz?l?m geli?tirebilmesi i?in tasarlanan ve yaz?l?m geli?tirme a?amas?nda geli?tiriciye bir?ok kullan??l? ara? sunarak daha kolay ve etkili ?ekilde yaz?l?m geli?tirmesine yard?mc? olan yaz?l?mlard?r.Python i?in hangi edit?rleri kullanabiliriz?Python i?in bir?ok edit?rü kullanabiliriz. Bu tamamen kullan?m al??kanl?klar? ve kullan?m kolayl??? gibi fakt?rlere ba?l?d?r. Bu edit?rlerden baz?lar? ?unlard?r.Python IDLE: web sitesinde yer alan ücretsiz bir Python edit?rüdür. Ba?lang?? seviyesi i?in en temel edit?rdür. Kü?ük kodlar? IDLE ekran?na yazabilirsiniz ancak daha geni? kapsaml? kodlar i?in sol üst k??ede File [Dosya] menüsüne ait olan New Window [Yeni Pencere] se?ene?ine t?klaman?z gerekir. Burada beyaz bir ekranla kar??la?acaks?n?z. ??te as?l kodlar? buraya yazman?z gerekecektir. Yazd???n?z kodlar? kaydetmek i?inse File [Dosya] menüsüne ait olan Save As [Farkl? Kaydet] se?ene?ine t?klaman?z gerekir. Kodlar? direk ?al??t?rmak i?in ise Run [?al??t?r] menüsüne ait olan Run Module se?ene?ine ya da klavyeden direk F5 tu?una t?klayabilirsiniz.Not: Python'a yeni ba?layanlar?n en s?k yapt??? hatalardan biri IDLE ekran?ndaki >>> i?areti ile komut aras?nda bo?luk b?rakmalar?d?r. Bu durumda kodlar ?al??mayacakt?r. Bu yüzden kod yazarken en ba?ta bo?luk b?rakmamaya ?zen g?steriniz.Wing IDE: adresinden indirilebilirsiniz. Wing IDE Professional, Wing IDE Personal ve Wing IDE 101 olmak üzere ü? ?e?idi vard?r. Bunlardan Wing IDE 101 ücretsizdir.Canopy: adresinden ücretsiz indirilebilirsiniz.Pycharm: Python i?in en ?ok tercih edilen edit?rdür. adresinden indirebilirsiniz.Di?er Edit?rler: Sublime Text, Eclipse , Visual Studio, Pydev, VIM, Spyder, Komodo, PTVS, Eric Python, Anaconda, Geany, Emacs, Atom, PyScripter, Jupyter Notebook vbs...Derleyiciler: Kaynak kodlar? hedef kodlara d?nü?türür.Yorumlay?c?lar : Kaynak kodlar? hedef kodlara d?nü?türmekle beraber program?n ?al??mas?n? tekrarlar. Python, yorumlanan bir dildir.Yanayla?lar : Program?n ?al??mas?yla ilgili istatistiki veri toplar.Hata Ay?klay?c?lar (Debugging): Programdaki hatalar? bulur.Yorumlar: Python 'da kodlar zamanla karma??k h?le gelir ve bu da okumay? zorla?t?r?r. Bunun i?in kodlara a??klama eklenmesi gerekebilir. # i?areti ile program i?erisine yorum yazmak mümkündür. Programlama dili, yorumlar? g?z ard? eder ve kod yap?s? bozulmaz. ?r;'F?rat' , 'Dicle' #virgül iki ayr? string'i birle?tirir.Not: ?? t?rnak aras?na ?oklu yorum yazabiliriz.>>>a=5>>>b=9unaa ile b'yi toplayal?m bakal?m ne ??kacaki199 99>>>a+bSabitler, De?i?kenler ve Atama: De?i?meyen de?erlere sabit, onlara atanan ifadelere ise de?i?ken denir. B?ylece daha sade, i?levsel ve zaman kazand?r?c? i?lemler yap?l?r.#a de?i?ken, "Trabzon" ise sabit de?erdir. = ise atama i?lemi yapar.a = "Trabzon" print(a)??kt?: Trabzon?r: a= 5 b=-4 c=30print(a*b+c)??kt?:10Not: Burada = sembolünün anlam? matematikte kullan?ld??? ?eklinden farkl?d?r. Matematikte bu sembol e?itlik sa?lar fakat Python 'da simetri olmad??? i?in 5 = x gibi bir ifade hatal? olacakt?r.5=xprint(x) ??kt?:hataNot: Python operat?r kullan?rken k?saltmalar yapabilir. ?rne?in x= x + 5 deyimi x + = 5 olarak k?salt?labilir. Bu ifade " x'i 5 artt?r." anlam?na gelir.12065-224155>>> x=5 >>> x+=7 >>> print(x) 12>>> x -= 4 >>> print(x) 8>>> x //= 3 >>> print(x) 2>>> x *= 8 >>> print(x) 16>>> x %= 6 >>> print(x) 4>>> x**= 3 >>> print(x) 6400>>> x=5 >>> x+=7 >>> print(x) 12>>> x -= 4 >>> print(x) 8>>> x //= 3 >>> print(x) 2>>> x *= 8 >>> print(x) 16>>> x %= 6 >>> print(x) 4>>> x**= 3 >>> print(x) 64#x=x+7 ile ayn? anlama gelir. #x=x-4 ile ayn? anlama gelir. #x=x//3 ile ayn? anlama gelir. #x=x*8 ile ayn? anlama gelir. #x=x%6 ile ayn? anlama gelir. #x=x**3 ile ayn? anlama gelir.De?i?ken adlar? say? ile ba?lamaz. TOC \o "1-5" \h \z 3_kilo_elma = "10 tl"Xkilo_elma_3 = ”10 tl”*De?i?ken adlar? ?zel sembol i?ermez ( _ alt?izgi hari? )gelir?= "500 TL"XkuManici_adi= "admin"*De?i?ken adlar?nda bo?luk olmaz.kullanici adi = "admin"Xkulllanici_adi = "admin"*Not: De?i?ken adlar?nda Türk?e karakter kullanabiliriz. Ancak uyum sorunu ihtimaline kar?? bundan ka??n?n?z.De?i?ken adlar?nda baz? ?zel anlam ifade eden kelimeler kullan?lmaz.True=5Xtrue=5?-^Kü?ük büyük harf duyarl?l???ndan hata olu?maz.and=8XAnd=8?-^Kü?ük büyük harf duyarl?l???ndan hata olu?maz.Not: Python'da ?zel anlam ifade eden kelimeleri g?rmek i?in a?a??daki kodlar? yaz?n.import keyword keyword.kwlist??kt?: ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']?r:import keyword a=keyword.kwlistlen(a)#Python'da ?zel anlam ifade eden ka? adet kelime var???kt?: 33?r: Bir de?ere iki veya daha fazla de?i?ken atayabiliriz. a=b=c=4print(a*b+c)#4*4+4??kt?: 20?r: Bir de?i?kene defalarca farkl? de?erler atayabiliriz. Son de?er ge?erlid ir.x = 10 x = 20 x = 30print(x+5)#30+5??kt?: 35?r: ?oklu atama i?lemi2004060143510#4*3-200#4*3-2x, y, z = 4,3,2 print(x*y-z)??kt?: 10?r: De?i?ken Takas?2089150130810#x art?k y, y art?k z, z art?k x oldu.#4**2*300#x art?k y, y art?k z, z art?k x oldu.#4**2*3x,y,z=4,3,2 x,y,z=y,z,x print(z**y*x)??kt?: 48?r: De?i?ken iptali i?in komut penceresini kapat?p a?abiliriz ya da del komutunu kullanabiliriz.>>>a=2>>>print(a)2>>>del a#a de?i?keni art?k yok yani iptal edildi.>>>print(a)#a de?i?kenini iptal etti?imiz i?in kod art?k hata verecektir.VER? T?RLER?:string: T?rnak i?indeki her türlü karakter dizileridir.>>>”Merhaba Dünya"'Merhaba Dünya'Not: string'lerde ?ift t?rnak kullanmak ?art de?ildir. Tek t?rnak veya ü? t?rnak da kullanabiliriz.>>>'Merhaba Dünya'^tek t?rnak'Merhaba Dünya'>>>'''Merhaba Dünya'''^ü? tek t?rnak'Merhaba Dünya'>>>"""Merhaba Dünya"""^ü? ?ift t?rnak'Merhaba Dünya'Not: Python'da ü? t?rnak kullanmam?z?n sebebi alt sat?ra ge?ebilmektir.'"BilgisayarBilimiDersi'''??kt?:BilgisayarBilimiDersi#Peki, neden bazen tek t?rnak veya ?ift t?rnak kullanmam?z gerekiyor? ?rnek olarak ??yle bir ??kt? elde etmek isteyelim. ?stanbul'un illeriBu ifadede bir kesme i?areti var. ??inde kesme i?areti olan bir string'i tek t?rnak i?ine alamay?z. Bu yüzden di?er bir alternatif olan ?ift t?rna?? ya da ü? t?rna?? kullanmal?y?z."?stanbul'un illeri"?stanbul'un illeri"""?stanbul'un illeri"""?stanbul'un illeriinteger: Tam say?lard?r. Pozitif, negatif ya da s?f?r de?eri alabilir. Kesirli de?er i?ermez. ?r: 10, 0, -10float: Reel say?lard?r. Kavan noktal? say?lar da denir. Ancak burada virgül yerine nokta kullanmam?z gerekir. ?r: 12.6, 12.0, -12.0, 0.0bool: Herhangi bir ifadenin do?rulu?unu veya yanl??l???n? sorgular. Bool iki de?er alabilir. Bunlar True ve False 'tur.str(): Verileri string'e (karakter dizisi) ?evirir. TOC \o "1-5" \h \z str(4)??kt?:'4'str(4.0)??kt?:'4.0'str(10+2)??kt?:'12'str(10/2)??kt?:'5'int(): Verileri integer'a (tamsay?) ?evirir.int(28.9)??kt?:28int(5+4)??kt?:9int(5/3)??kt?:1int(5*0.4)??kt?:2int(0.8+0.9)??kt?:1int("5")??kt?:5Not: T?rnak i?indeki verilerin tamsay?ya ?evrilmesi i?in t?rnak i?indeki ifadenin tamsay? olmas? gerekmektedir. Aksi halde ?evirme i?lemi yap?lamaz.int("28.9") #t?rnak i?erisindeki ifade tamsay? de?ildir. Hata verir. int("5+4") #hata, t?rnak i?erisindeki ifade tamsay? de?ildir. Hata verir. int("bilgisayar") #hata, t?rnak i?erisindeki ifade tamsay? de?ildir. Hata verir.float(): Verileri float'a (reel say?) ?evirir.float(5) ??kt?: 5.0 float("5") ??kt?: 5.0 float("5.7") ??kt?: 5.7 float(-5) ??kt?: -5.0 float(0) ??kt?: 0.0 float(3+4) ??kt?: 7.0 float(3.5+4) ??kt?: 7.5Not: T?rnak i?indeki verilerin float'a ?evrilmesi i?in t?rnak i?indeki ifadenin tamsay? veya floatolmas? gerekmektedir. Aksi halde ?evirme i?lemi yap?lamaz.float("3+4") #t?rnak i?erisindeki ifade tamsay? veya float de?ildir. Hata verir.print() fonksiyonu: Ekrana yazd?rma fonksiyonudur.114300302260print("Merhaba Dünya”)00print("Merhaba Dünya”)2543810302260??kt?: 'Merhaba Dünya'00??kt?: 'Merhaba Dünya'Kural: Stringleri t?rnak i?erisine almam?z gerekir.114300302260print('Merhaba Dünya')00print('Merhaba Dünya')2543810302260??kt?: 'Merhaba Dünya'00??kt?: 'Merhaba Dünya'Kural: Stringleri tek t?rnak i?erisine de alabiliriz.Kural: Stringleri ü? tek t?rnak i?erisine de alabiliriz. print("'Merhaba Dünya''') ??kt?: 'Merhaba Dünya'Kural: Stringleri ü? ?ift t?rnak i?erisine de alabiliriz. print("""Merhaba Dünya""")??kt?:'Merhaba Dünya'Kural: Stringleri t?rnak i?erisine almazsak kod hata verir. print(Merhaba Dünya)??kt?:HataKural: Stringlerde t?rnaklar eksik olursa kod hata verir. print("Merhaba Dünya)??kt?:HataKural: Say?lar? t?rnak i?erisine almam?za gerek yoktur. print(5)??kt?:5Kural: Say?lar? t?rnak i?erisine al?rsak o art?k bir string'tir. Dolay?s?yla matematiksel olarak bir anlam ifade etmez.2543810-8890??kt?: '5'00??kt?: '5'print("5")Kural: Parantezin i?inde matematiksel i?lem varsa sonu? yaz?l?r. print(6+3)??kt?:9Kural: Matematiksel i?lem t?rnak i?inde yaz?ld?ysa veriart?k string olaca?? i?in i?lem yap?lmazve aynen yaz?l?r.print("5+4")??kt?:'5+4'Kural: Bo? bir string ekrana yazd?r?labilir. print("")??kt?:Kural: Virgüller ifadelerin aras?na birer bo?luk b?rak?r. print("Bilgisayar'V'Bilimi'V'Kodlama")??kt?: Bilgisayar Bilimi KodlamaKural: + i?areti ifadeleri birle?tirir.print("bilgi"+"sayar")??kt?: bilgisayar?r: print( "bNgi"+" 'V'sayar")??kt?: bilgi sayarA??klamas?: Ortadaki ?ift t?rna??n i?inde bir bo?luk karakteri var. Dolay?s?yla araya bir bo?luk karakteri ekledik.Kural: + i?areti koymadan da ifadeler birle?tirilebilir. print( "bilgi" "sayar")??kt?: bilgisayar?r: print(999 + "9") #integer ve string toplanmaz ??kt?: Hata TOC \o "1-5" \h \z len("Türkiye")??kt?:7len("Bilgisayar Bilimi”)??kt?:17"Bilgisayar Bilimi" stringinin uzunlu?u 17 karakterdir. Burada bo?luk karakterinin de say?ld???na dikkat edelim.len(”Haydi, Kodla!”)??kt?:13Noktalama i?aretleri de say?l?r.len(”Bilgisayar Bilimi”) + len(”Dersi”) ??kt?: 2263504108450?rnekler:len(”len”)??kt?len("0")??kt?len("-4")??kt?len(”4.5”)??kt?len("-1.5")??kt?len(”12+42")??kt?len("100-20")??kt?len(str(10))??kt?len(int("10")??kt?len(563)??kt?00?rnekler:len(”len”)??kt?len("0")??kt?len("-4")??kt?len(”4.5”)??kt?len("-1.5")??kt?len(”12+42")??kt?len("100-20")??kt?len(str(10))??kt?len(int("10")??kt?len(563)??kt?19323054485005312345 2hata (string de?il) hata (string de?il)00312345 2hata (string de?il) hata (string de?il)"Bilgisayar Bilimi" stringi ile "Dersi" stringinin uzunlu?u say?sal olarak topland?. len(”Bilgisayar Bilimi”) - len(”Dersi”) ??kt?: 12type("Merhaba")??kt?: <class 'str'>type("")??kt?: <class 'str'>type("4")??kt?: <class "str">type(4)??kt?: <class "int">type(4.2)??kt?: <class 'float'>type(4.0)??kt?: <class 'float'>type(Merhaba)??kt?: t?rnak i?areti olmad??? i?in hata verir\n parametresi: Bu parametreye newline ad? verilir. print() fonksiyonu i?erisinde kullan?ld???nda ilgili yerden bir alt sat?ra ge?i? yapar.print("bilgisayar bilimi”)??kt?: bilgisayar bilimi \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.?r:print(”bilgisayar\nbilimi”)??kt?:bilgisayarbilimi #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”)??kt?: Ocak ?ubat Mart * parametresi: stringi par?alara b?ler.?r:print(*”Linux”) ??kt?: L i n u xsep parametresi: ?ngilizcede separator (ay?r?c?, ayra?) kelimesinin k?saltmas?d?r.prmt("", "google.", "com")??kt?: google. com sep=" " ifadesi g?rünmezdir, yani asl?nda o arka planda ?al???r ve default olarak t?rnak i?indeki ifadelerin aras?nda bo?luk b?rak?r. Ancak t?rnak i?indeki ifadelerin aras?na bo?luk de?il de ba?ka bir karakter koymak istersek o zaman i? de?i?ir. O halde yapmam?z gereken sep parametresinin i?ine istedi?imiz karakteri koymakt?r. O halde sep parametresine ( yani sep= " " deki ?ift t?rnak aras?na ) hi?bir ?ey yazmaz isek t?rnak i?indeki ifadelerin aras?nda hi? bo?luk olu?maz. O halde do?ru kodumuzu yazal?m.print("", "google.", "com", sep="")#Bir bo?luk nelere kadir??kt?: Not: sep=" " ile sep=None ayn? anlama gelir.end parametresi: print() i?erisinde kullan?l?r. Yazd?r?lmak istenen ifadelerin sonuna hangi karakterin gelece?ini belirler. Varsay?lan olarak "\n" parametresi ile birlikte gelir. Yani yaz?lan ifade bitince bir alt sat?ra ge?er.?r:print("Bugün günlerden Sal?")??kt?: Bugün günlerden Sal?#Burada herhangi bir end parametresi g?remiyoruz. Ancak Python yukar?daki kodu asl?nda ?u ?ekilde alg?lar:print("Bugün günlerden Sal?", end="\n")#end parametresinin de?erini de?i?tirelim.print("Bugün günlerden Sal?", end=".")??kt?: Bugün günlerden Sal?.#B?ylece end fonksiyonu ile string'in sonuna bir nokta koymu? olduk.?r:print(*"Linux", sep=".")??kt?: L.i.n.u.x?r:print(*"Linux", sep="\n") ??kt?:LinuxA??klama: * i?aretini kullanarak "Linux" stringini par?alara b?ldük ve bu par?alar?n aras?nda sep parametresini kullanarak sat?r ba?? (\n) yapt?k.string indeksleme ve par?alama: stringlerde her bir karakterin kendine has bir konumu vard?r. Bu konumlara indeks ad? verilir. Python'da ve ?o?u programlama dilinde indeksleme "0" dan ba?lar. A?a??daki ?rnekleri inceleyelim.>>> a="Kodlama" >>> a[0]'K'>>> a[2]'d'1673225-18415#sondan 1.karakter00#sondan 1.karakter15913101014730#ba?tan 6.karaktere kadar tüm karakterler #2.karakterden sona kadar tüm karakterler #tüm karakterler00#ba?tan 6.karaktere kadar tüm karakterler #2.karakterden sona kadar tüm karakterler #tüm karakterler>>> a[-1]'a'>>> a[-3]'a'>>> a[2:6] 'dlam'>>> a[:6] 'Kodlam'>>> a[2:] 'dlama'>>> a[:] 'Kodlama'>>> a[2:-2] 'dla'>>> a[:-2]'Kodla'>>> a="Kodlama E?itimi">>> a[2:13:2] #2.karakterden 13.karaktere kadar 2 s?ra atlayarak 'daaEii'>>> a[::2]#Ba?tan sona kadar 2 s?ra atlayarak'KdaaEiii'>>> a[::-1]#Sondan ba?a kadar 1 s?ra atlayarak'imiti?E amaldoK'?r: ?sminizi tersten yazd?r?n. isim = input ("?sminiz :")print("?sminizin tersten yaz?l??? :", isim[::-1])Formatlama: Bir stringin i?ine ?nceden tan?mlanan bir veri veya de?i?ken yerle?tirebiliriz. Bu i?leme formatlama denir. Bu i?lem i?in süslü parantez kullanmal?y?z.?r:"{}{}{}"-format(5,6,7)'567' -> A??klamas?: T?rnak i?aretlerinin aras?na ü? adet a??l?p kapanan süslü parantez yerle?tirdik. Sonra .format() fonksiyonunun i?ine s?ras?yla 5,6,7 yazd?k. B?ylece ilk süslü parantezin i?ine 5, ikinci süslü parantezin i?ine 6, ü?üncü süslü parantezin i?ine de 7 koymu? ve bunlar? yazd?rm?? olduk.?r: ?imdi de de?i?ken kullanarak formatlama i?lemi yapal?m.a=3b=4"{}+{}'ün toplam? {}'dir.".format(a,b,a+b) ??kt?: '3+4'ün toplam? 7'dir.'?r:a = "{} ve {} ?ok iyi arkada?t?r." a.format("Ali", "Veli")??kt?: 'Ali ve Veli ?ok iyi arkada?t?r.'?r: Süslü parantezlerin i?ine say? koyarak yazd?rma s?ralamas?n? belirleyebiliriz."{2} {0} {1}".format("Ali","Veli","Murat")??kt?: 'Murat Ali Veli'A??klamas?: T?rnak i?aretlerinin aras?na ü? adet a??l?p kapanan süslü parantez yerle?tirdik. Bu süslü parantezlerin i?ine de verilerin hangi s?rada olaca??n? g?steren say?lar koyduk. Yani burada {2} 'nin anlam? ilk s?raya 2.verinin yani "Murat" ?n gelece?idir. Bu arada Python'da veri s?ralamas? 1'den de?il 0'dan ba?lamaktad?r. O yüzden "Ali" l.de?il O.s?radad?r. Dolay?s?yla "Veli" de l.s?radad?r. B?ylece ilk süslü parantezin i?ine "Murat", ikinci süslü parantezin i?ine "Ali", ü?üncü süslü parantezin i?ine de "Veli" koymu? ve bunlar? yazd?rm?? olduk.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?r: Kullan?c?n girdi?i iki say?y? toplayan kodlar: (??renciler daha sonra ü? veya d?rt adet say?y? toplas?n)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?r: Girilen ya?a yorum yazan kodlar:yas = input("Ya??n?z: ") print("Demek", yas, "ya??ndas?n.") print("Daha ?ok gen?sin")?r: Saniyeyi dakikaya ?eviren kodlar:saniye=int(input("Saniye say?s?n? giriniz: ")) dakika=saniye/60print(saniye,"saniye ",dakika,"dakika eder")?r: Dairenin alan?n? bulan kodlar:r = int(input("Yar??ap? giriniz:")) pi = 3.14alan = pi * (r **2) print("Dairenin alan?:", alan)?r: Kullan?c?n?n girdi?i saniyeleri, saat, dakika ve saniye olarak par?alara ay?ran program:saniye = int (input ("saniye say?s?n? girin:")) saat = saniye // 3600#3600 saniye = 1 saatsaniye = saniye% 3600dakika = saniye // 60#60 saniye = 1 dakikasaniye = saniye% 60print(saat, "sa", dakika, "dk", saniye, "sn")OPERAT?RLER (??LE?LER): Aritmetik Operat?rler:Toplama : +??karma : - ?arpma : * TOC \o "1-5" \h \z B?lme :/?s Alma : **+ operat?rü: Toplama ve birle?tirme i?in kullan?l?r.>>>10+2030>>>5.5+3.89.3>>>9+4.013.0Not: Say?lar?n ?ift t?rnak i?ine al?nmad???na dikkat edin. E?er ?ift t?rnak i?ine al?nsayd? veri türü bir integer de?il string olacakt?. Bu durumda matematiksel i?lem de?il birle?tirme i?lemi yap?lacakt?r.?rnekler:6350-45085>>>"10"+"20" >>>"10"+ 20 >>>"5" + str(10) >>>5 + int("10")00>>>"10"+"20" >>>"10"+ 20 >>>"5" + str(10) >>>5 + int("10")'1020'^hata (ikisinin de ayn? tür veri olmas? gerekir) '510'15 - operat?rü: TOC \o "1-5" \h \z >>>50-3020>>>-7-- 92>>>1.5-0.51.0>>>4.0-13.0 * operat?rü: ?arpma ve stringleri belli say?da tekrar etmek i?in kullan?l?r.>>>10*550>>>-6*-8-48>>>1.5*1.52.25?r:>>>x=4>>>y=3>>>3*x+2*y-513?r:>>>"w" * 3^"w" stringinin 3 defa tekrar ederek yazd?rd?.www?r:>>>"aheste " * 2^"aheste " t?rnak kapanmadan bo?luk b?rak?ld???na dikkat edin.aheste aheste?r:>>>"-" * ?o^"-" i?aretini 10 kere ?o?altt?k./ operat?rü: B?lme i?lemi ger?ekle?tirir. Sonu? daima float veri türüdür. TOC \o "1-5" \h \z >>>21/37.0>>>int(21/3)7burada veri integer'a d?nü?türüldü.>>>21/0-^hata // operat?rü: B?lme i?leminde kalan say? g?z ard? edilir.(Taban B?lme)>>>25//64>>>6//250>>>4.5//1.2 3.0 >>>2.1//1 2.0Not: - eksi ve / b?lü i?le?lerini karakter dizileri ile birlikte kullanamay?z.?s Alma Birinci Yol: TOC \o "1-5" \h \z 5**2255**-10.25**01?s Alma ?kinci Yol:pow(5,2)25pow(5,-1)0.2pow(5,0)1pow(11,3,4) 3^11'in 3. kuvveti olan 1331'in 4'e b?lümünden kalan say?Not: 5*103 gibi bir ifade ??yle yaz?labilir: TOC \o "1-5" \h \z 5e250005E25000Mod ??lemi: B?lme sonucunda kalan say?y? verir.25%7422%11 0 6%2560%25025%0^hataKarek?k Alma: Bir say?n?n 0.5. kuvveti o say?n?n karek?küdür.>>>144**0.512Yuvarlama:round(28.71)29round(28.47)28Not: Yuvarlama i?leminde e?er 5 de?eri ile kar??la??rsak en yak?n ?ift say?ya yuvarlama yapmam?z gerekir.round(27.5)28^en yak?n ?ift say? olan 28'e yuvarl?yor.round(28.5)28->A??klamas?: En yak?n ?ift say? kural?ndan dolay? sonu? 28 oluyor.?r:x = 793.748 TOC \o "1-5" \h \z round(x)794round(x, 1)793.7round(x, 2)793.75round(x, 0)794.0round(x, -1)790.0round(x, -2)800.(alt ?izgi i?areti): Son verinin de?erini haf?zada tutar.?r:>>>10+515>>>_+5->alt?izgi ile 5'i toplad?k.20^art?k son ??e 15 de?il 20 oldu.>>> _/10 2.05+4*3/3-9 ??kt?: 0.015-2**4/2+(-2-2) ??kt?: 3.00-9**0??kt?: -1100**0.5/10*2 ??kt?: 2.010%6-1 ??kt?: 339//12+12/2 ??kt?: 9.0"10+20+30"??kt?: 10+20+30"55"+"55"??kt?: 55555+"5"??kt?: hatastr(12+8)+"0"??kt?: 200int("56")+int("12") ??kt?: 68"k"*3+str(5)??kt?: kkk52*"6",66)??kt?: 66 665+4*10/(4+5-9)hataBool Kavram?: Bool herhangi bir ifadenin do?rulu?unu veya yanl??l???n? sorgular. E?er bir sorgulaman?n sonucu do?ru ise True, yanl?? ise False ??kt?s? al?yoruz.a=11402080-48260TrueFalseTrueFalseFalseTrueTrueFalseTrue00TrueFalseTrueFalseFalseTrueTrueFalseTrue20815301466215^alfabetik s?raya g?re hareket eder.00^alfabetik s?raya g?re hareket eder.18415-2114550E?ittirE?it de?ildir><>=<=00E?ittirE?it de?ildir><>=<=1216025-1929130!=büyüktür kü?üktür büyük e?ittir kü?ük e?ittir00!=büyüktür kü?üktür büyük e?ittir kü?ük e?ittira==1a==2a!=5a!=1a>28>a a>=1a>=2"Bilim"<"Kodlama"Not: Bool i?le?leri sadece do?ruluk-yanl??l?k sorgulamaya yarayan ara?lar de?ildir. Bilgisayar biliminde her ?eyin bir bool de?eri vard?r. 0 de?eri ve bo? veri tipleri False 'tur. Bunlar d???nda kalan her ?ey ise True 'dur.bool(5)Truebool(5.8)Truebool(-5)Truebool("Steve Jobs") True bool("0")Truebool(" ")Truebool()Falsebool("")Falsebool(0)Falsebool(0.0)Falseand, or, not operat?rleri>>>a = 23 >>>b=10>>>a == 23 and b == 10 True>>>a == 23 and b == 56 False>>>a == 23 or b == 56 Truenot: De?il anlam? ta??r. KuMamc? taraf?ndan bir de?i?kene veri girilip girilmedi?ini denetlemek i?in kullan?labilir.?r: >>>a = 23 >>>not a False>>>a = "">>>not a True >>>a=0 >>>not aTrue?rnek Program: Parola girilip girilmedi?ini denetleyen kodlar.parola = input("parola: ") if not parola:print("Parola bo? b?rak?lamaz!") else:print("??lem tamam")Aitlik Operat?rü: Aitlik i?le?leri, bir karakter dizisi ya da say?n?n, herhangi bir veri i?inde bulunup bulunmad???n? sorgular. Python 'da bir tane aitlik i?leci bulunur. Bu i?le? de in i?lecid ir.>>>a ="abcd">>>"b" in a^"b" ifadesi a de?i?keninin i?inde mi?True>>>"f" in a-^"f" ifadesi a de?i?keninin i?inde mi?FalseKimlik Operat?rü: Python 'da her ?eyin bir kimlik numaras? vard?r. id() fonksiyonu ile bu kimlik numaras?n? bulabiliriz.>>>a = 100 >>>id(a)137990748^a de?i?keninin temsil etti?i 100 say?s?n?n kimlik numaras?KO?ULLU DURUMLAR: if, else, elifif : "e?er" anlam? ta??r. Bir ko?ulun sa?lanmas? durumunda kullan?l?r.#Ya?a g?re yorum yazan program:yas = int(input("Ya??n?z? giriniz: "))if yas < 14:print("Mrb ?ocuk!”) if 13 < yas < 19: print("Mrb Liseli!") if 18 < yas < 24:print("Mrb üniversiteli!") if 23 < yas < 30:print("Evlenme ya??n gelmi?") if 29 < yas < 55:print("?oluk ?ocuk nas?l?") if yas > 54:print("Hayat?n son demleri!")else: "de?ilse" anlam? ta??r. Bir ko?ulun sa?lanmamas? durumunda kullan?l?r.#Bir say?n?n tek mi ?ift mi oldu?unu tespit eden program:say? = int(input("Bir say? girin: ")) if say? % 2 == 0:print("Girdi?iniz say? ?ift say?d?r.") else:print("Girdi?iniz say? tek say?d?r.")#Kullan?c? ad? yaz?lmam??sa uyar? veren program:kullan?c? = input("Kullan?c? ad?n?z: ") if kullan?c?:print("Te?ekkürler!")else:print("Kullan?c? ad? alan? bo? b?rak?lamaz!")#Kullan?c? ad? veya parola yanl??sa uyar? veren program:kullan?c?_ad? = input("Kullan?c? ad?n?z: ") parola = input("Parolan?z: ")if kullan?c?_ad? == "aliveli" and parola == "1234": print("Programa ho?geldiniz") else:print("Yanl?? kullan?c? ad? veya parola!") elif: "e?er de?ilse" anlam? ta??r. E?er kodlarda sürekli if kullan?rsak program tüm ko?ullan g?zden ge?irip ona g?re karar verir. Ancak else sadece bir ?nceki if blo?una g?re hareket eder.#boya g?re yorum yazan programboy = int(input("boyunuz ka? cm?")) if boy < 160:print("boyunuz k?sa") elif boy < 180:print("boyunuz normal") elif boy < 200:print("boyunuz uzun") else:print("boyunuz ?ok uzun")Not: "if" ile "elif" aras?ndaki fark? daha iyi anlamak i?in yukar?daki programda elif yazan yerleri silip yerine if yaz?n. Bu durumda boyunuz ka? cm sorusuna 165 olarak cevap verseydik ??kt? a?a??daki gibi olacakt?. ?ünkü "if" tüm ko?ullar? de?erlendirmi? olacakt?.??kt?:boyunuz k?sa boyunuz normal boyunuz uzun#Parola uzunlu?una g?re i?lem yapan program: parola=input("Parolan?z: ") toplam_uzunluk=len(parola)mesaj="Parolan?z toplam {} karakterden olu?uyor!" if toplam_uzunluk > 12:print(mesaj.format(toplam_uzunluk)print("Parolan?z?n toplam uzunlu?u 12 karakteri ge?memeli!")else:print("Sisteme ho?geldiniz!")#?lk say?n?n ikinci say?ya tam b?lünüp b?lünmedi?ini hesaplayan ve sonuca g?re kullan?c?y? bilgilendiren program:b?lünen = int(input("Bir say? girin: "))b?len = int(input("Bir say? daha girin: "))?ablon = "{} say?s? {} say?s?na tam".format(b?lünen, b?len)if b?lünen % b?len == 0:print(?ablon, "b?lünüyor!") else:print(?ablon, "b?lünmüyor!")for d?ngüsü: Ba?lang??, biti? ve art?? de?erleri belirtilen i?lemleri tek tek tekrar eder.?r: 1'den 5' kadar olan say?lar? yazd?ral?m.print(1)print(2)print(3)print(4)print(5)??kt?:12345Ancak, 1'den 100'e kadar yazmak gerekirse b?yle bir ??züm yolu do?ru olmayacakt?r! Bu durumda d?ngü yap?lar? tercih edilmelidir. Python dilinde d?ngü i?in while ve for yap?lar? kullan?l?r.?r: 1'den 100'e kadar olan tüm say?lar? yazd?ral?m. De?i?kenimiz n olsun;for n in range(1,100): print(n, end=" ")??kt?: 1 2 397 98 99?r: ?imdi de 1'den 100'e kadar tüm tek say?lar? yazd?ral?m. De?i?kenimiz yine n olsun;for n in range(1,100,2): print(n, end=" ")??kt?: 1 3 595 97 99A??klama: range(1, 100, 2) ifadesindeki 1 ba?lang?? say?s?d?r. E?er buras? bo? b?rak?l?rsa say? otomatik olarak s?f?rdan ba?lar. 100 ise yaz?lacak say?lar?n s?n?r?d?r. 100 ??kt?ya d?hil de?ildir. 2 ise art?? miktar?n? g?sterir. Yani say?y? 2'?er artt?r?r.?rnekler:range(10) ^ 0, 1,2,3,4,5,6,7,8,9^ba?lang?? ve art?? de?eri yok. Sadece biti? de?eri var.range(1, 10) ^ 1,2,3,4,5,6,7,8,9^ art?? de?eri yok. Sadece ba?lang?? ve biti? de?eri var.range(1, 10, 2) ^ 1,3,5,7,9^ ba?lang??, biti? ve art?? de?eri var.range(10, 0, -1) ^ 10,9,8,7,6,5,4,3,2,1 ^ buradaki art?? de?eri eksiye do?ru gitmektedir.range(10, 0, -2) ^ 10,8,6,4,2range(2, 11, 2) ^ 2,4,6,8,10range(-5, 5) ^ -5,-4,-3,-2,-1,0,1,2,3,4range(1, 2) ^ 1range(1, -1, -1) ^ 1,0range(0) ^ ()?r: 21'den 0'a kadar olan say?lar? 3'er 3'er azaltarak yazd?ral?m.for n in range(21,0,-3): print(n, end=" ")??kt?: 21 18 15 12 9 6 3?r: 1'den 100' kadar olan say?lar?n toplam? top= 0for i in range(1,100): top+= i print(top)??kt?: 4950?r: 10 ve 10'un üstleri yazd?ran programfor i in range(5):print("{}".format(10**i))??kt?:110100100010000?r: Bir string de?i?keninin her bir karakterini ayr? ayr? i?leme ve yazd?rmaa = "kodlama" for harf in a:print(harf, end=" ")??kt?: k o d l a m a?r:say?lar = "12345" for say? in say?lar:print(int(say?) * 2, end=" ")??kt?: 2 4 6 8 10 ?r:say?lar = "1234567"for i in say?lar: if int(i) > 3:print(i, end=" ")??kt?: 4 5 6 7A??klamas?: say?lar de?i?keni olu?turduk. "1234567" ifadesindeki her bir karakteri ay?rd?k. Yani tüm say?lar art?k ba??ms?zl???n? ilan etmi? durumda. Ayr?ca her bir karakteri i de?i?kene atad?k. Ancak biz bu karakterleri int(i) kodunu yazarak tamsay?ya ?evirdik. ?ünkü matematiksel i?lemler yapmak i?in verileri say?ya ?evirmemiz gerekiyor. if komutuyla da 3'ten büyük olanlar? yazd?rd?k.?r: Parola girilirken Türk?e karakter uyar?s? veren program tr_harfler = "?????????ü??"parola = input("Parolan?z: ")for karakter in parola:if karakter in tr_harfler:print("Parolada Türk?e karakter kullan?lamaz")?r: ?lk_metin'de olan ama ikinci_metin'de olmayan ??eleri yazd?rmakilk_metin = "Bilgisayar" ikinci_metin = "Bili?im"for s in ilk_metin:#ilk_metin'deki her ??eye s diyoruzif not s in ikinci_metin:#e?er bu ??eler ikinci_metinde yoksaprint(s, end=" ")#bu olmayan s'leri yazd?r?yoruz??kt?: g s a y a rwhile d?ngüsü: Bir ko?ul sa?lanmaya devam etti?i sürece i?lemleri tekrarlar. ?ngilizce bir kelime olan while, Türk?ede '... iken, ... oldu?u sürece' gibi anlamlar?na gelir.?r:while a == 1:# a, 1 oldu?u sürece?r:a = 1while a < 10:# a 10'dan kü?ük oldu?u süreceprint("Ali")# ekrana "Ali" yazd?r.A??klamas?: Burada program?m?z diyor ki a, 10'dan kü?ük oldu?u sürece ekrana "Ali" yazd?r. Ancak a=1 oldu?u i?in a her zaman 10'dan kü?ük olacak. Bu da ekrana sürekli "Ali" yaz?lmas?na neden olacak. Buna sonsuz d?ngü diyoruz. (infinite loop) Buna son vermek i?in klavyenizde Ctrl+C veya Ctrl+Z tu?lar?na basarak program? durmaya zorlayabilirsiniz.#Bu durumu düzeltmek i?in program? ?u ?ekilde yazal?m;a = 1while a < 10: a += 1print("Ali", end=" ")??kt?: Ali Ali Ali Ali Ali Ali Ali Ali AliA??klamas?: Python ?ncelikle a = 1 sat?r?n? g?rüyor ve a'n?n de?erini 1 yap?yor. Daha sonra(while a <10) sat?r?n? g?rüyor.Ard?ndan a'n?n de?erini 1 art?r?yor (a += 1) ve a'n?n de?eri 2 oluyor. a'n?n de?eri (yani 2) 10'dan kü?ük oldu?u i?in Python ekrana ilgili ??kt?y? veriyor. ?lk d?ngüyü bitiren Python ba?a d?nüyor ve a'n?n de?erinin 2 oldu?unu g?rüyor. a'n?n de?erini yine 1 art?r?yor ve a'y? 3 yap?yor. a'n?n de?eri h?l? 10'dan kü?ük oldu?u i?in ekrana yine ilgili ??kt?y? veriyor. ?kinci d?ngüyü de bitiren Python yine ba?a d?nüyor ve a'n?n de?erinin 3 oldu?unu g?rüyor. Yukar?daki ad?mlar? tekrar eden Python, a'n?n de?eri 9 olana kadar d?nmeye devam ediyor. a'n?n de?eri 9'a ula?t???nda Python a'n?n de?erini bir kez daha art?r?nca bu de?er 10'a ula??yor. Python a'n?n de?erinin art?k 10'dan kü?ük olmad???n? g?rüyor ve program? sona erdiriyor.?r: a=1while a<5:# a 5'ten kü?ük oldu?u süreceprint(a, end=" ")# a'y? yazd?r.a+=1# a'y? 1 artt?r.??kt?: 1 2 3 4A??klamas?: ?lk sat?rda a de?i?kene 1 atad?k. ?kinci sat?ra geldi?imizde ise de?i?kenin 5'ten kü?ük olup olmama durumuna bakt?k, e?er kü?ükse kodumuz alt sat?ra ge?ecek ve b?ylece de?i?ken ekrana yazd?r?lacak. Son koda geldi?imizde a de?i?keni 1 de?er art?p 2 olacak ve d?ngüye girecek. Sonra d?ngü devam edip ekrana 2 yazd?r?lacak. Bu durum a'n?n 5'ten kü?ük olmamas? ?art?na kadar sa?lanacak. Yani a art?k 5 oldu?unda yani while a<5:ko?ulusa?lanmad???nda d?ngü duracak ve ekrana sadece 1 2 3 4 yazd?r?lm?? olacak?r: 1'den 16'ya kadar ?ift say?lar? yazd?rma: a = 0while a < 16: a += 1if a % 2 == 0:print(a, end=" ") ??kt?: 2 4 6 8 10 12 14 16Belirsiz D?ngü: Bu d?ngüde d?ngünün ka? defa d?nece?i belirsizdir. D?ngününka? defa d?nece?ine ?artlar ve kullan?c? karar verir.n = 1karar= int(input(”say?lar ka?a kadar s?ralans?n?” )) while n <= karar: print(n) n += 1say?lar ka?a kadar s?ralans?n?7 ??kt?: 1 2 3 4 5 6 7A??klama: Bu programda d?ngünün ka? defa d?nece?i belli de?ildir. Kullan?c?n?n girdi?i say? 1 veya 1'den büyük oldu?u sürece d?ngü tekrar edecektir. ?rne?in kullan?c? 7 say?s?n? girdi?inde 1'den 7'ye kadar olan say?lar ekrana yazd?r?lacakt?r. Ancak kullan?c? 0 veya eksi de?erde bir say? girdi?inde while n <= karar: ?art? olu?mam?? olaca??ndan program tepki vermeyecektir. ................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download