Her Yaştan İnsan için Python (Basit, Net ve Örnekli.)

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant


Resim0 - Python


Neden Python


"Ya zaten öğrenmek için bunu seçtik, neden bir daha neden seçmemiz gerektiğimizi yazıyorsun ki? dediğinizi duyar
gibiyim. Ama anlatmadan geçilmemesi gereken bir nokta bu.

İlk olarak son derece hamarattır. Bir çok alanda çalışabilir ve oldukça hızlıdır.
Ayrıca özgür / açık kaynak kodludur.
Onun sevilen bir diğer tarafı da öğrenmesi kolay!
Hadi yavaştan devam edelim...

Python Tarihi


Geliştirilmeye 1990 yılında Guido van Rossum (Hollandalı) tarafından Amsterdam'da başlanmıştır.
Adını sanılanın aksine bir yılandan değil Guido van Rossumun çok sevdiği, Monty Python adlı altı kişilik bir İngiliz komedi grubunun Monty Pythons Flying Circus adlı gösterisinden almıştır.
Günümüzde Python Yazılım Vakfı çevresinde toplanan gönüllülerin çabalarıyla sürdürülmektedir.



Resim1 - Gösteri




Resim2 - Guido van Rossum


Yılan Meselesi


İsmini Piton yılanından almadığını, nerden aldığını söylemiştim. Bu arada Python İngilizce Piton demek.
Öğretilen kitaplarda ya da kaynaklarda pitona hep değinilir. Merak etmeyin! Python, piton değil. Isırmaz!

Öğrenmesi


Ne yazık ki insanlar olarak öğrenirken çoğu zaman sıkılırız. Ama sıkılmayacağınız dilden anlatacağım!
Belirli bir programa göre ilerlemek her zaman öğrenmek için iyidir. Kendinize çalışma saatleri ayarlayabilirsiniz.
Ya da bölüm bölüm öğrenebilirsiniz. Merak etmeyin, öğrenmesi kolay olduğu için rahatça öğreneceğiz.

Python'ı Edinmek


Haydi başlayalım. İlk adım her zaman ki gibi dili edinmek olacak. Sitesine girelim.

Welcome to Python.org



Resim3 - Site


İşaretlediğim yere tıklayarak indirme sayfasına gidelim.



Resim4 - Sürüm


Python, geliştirilmektedir. Bu nedenle birden fazla sürümü var tabi ki. Ben 3.7 üzerinden anlatacağım.
Resim deki gibi 3.7.0 ı bulup "Download" diyelim.



Resim5 - İndirilecekdosya


Ben Windows 10 da anlatım yapacağım için Windows sürümünü indiriyorum. Dosyayı indirip çift tık ile
çalıştıralım.



Resim6 - Kurulum Ekranı


"Customize İnstallation" diyelim.



Resim7 - Kurulum Ekranı 2


Bu şekilde ayarlayıp "Next" diyelim.



Resim8 - Kurulum Ekranı 3


Burayı da bu şekilde ayarlayıp "Install" diyelim... Kurulumu bekleyeceğiz, çok sürmez.



Resim9 - Kurulum Ekranı Bitiş


Evet, kurulum sizinde gördüğünüz gibi kısa süre de bitti. "Close" diyip çıkalım.


1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15-Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html
 
Moderatör tarafında düzenlendi:

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant
Cevap: Her Yaştan İnsan için Python (Basit, Net ve Örnekli.) - Basitçe Veri Tipleri ve Alıştırmalar

rNHf4y.png


Veri Tipleri


Ne demek mi istiyorum veri tipi derken, hemen açıklayalım. Veri dediğimiz edinidiğimizdir, bilgidir.
Her veriye her işlem yapılamaz. Örneğin, a ile b yi toplarsak kaç eder? Matematik ile çözmeye çalışırsak
a ile b nin değerini bilmemiz gerekir. Örneğin a = 5, b = 1 gibi. Ancak normal olarak bakarsak a ile b
bir sayı değildir ve toplamaz. Yazıya matematik işlemi uygulamayız, sayıya da büyük küçük yazamayız.

İşte veri tipi dediğimiz şey de budur aslında. Bunların hepsi bir tiptir.

Değişken


Ortaokul Fen dersinde elektirik devrelerinde görmüşüzdür eminim bir çoğumuz "Değişken" kelimesini ilk defa.
Adı üzerinde değişken, her bir veri değişken olabilir çünkü değiştirilebilirler. Örneğin, bisikletinizi
garaja ayak dediğimiz parça üzerine de koyabilrsiniz, yere de yatırabilirsiniz veya tamircinin yaptığı gibi
ters çevirip de koyabilirsiniz. Bisiklet bu örnekte değişkendir çünkü değiştirebiliriz. Garaj ise bizim
programımızdır, çünkü bisikleti hep oraya koyuyoruz, ki değişkenide program işleyecektir.

Değişken, değiştirilebilir unutmayın :)

Örneğin ben size iki tane sayı söylüyorum ve bunları toplamanızı istiyorum.
Size İlk sayı 7 dedim. Ardından İkinci sayı 5 dedim. Siz de aklınızda tuttuğunuz sayıları toplayarak 12
buldunuz.

Şimdi size İlk sayı 4 dedim. Artık zihninizdeki ilk sayıyı 7 e değil 4 e eşitlediniz. Ardından
İkinci sayı 1. dedim. Bu sefer aklınızdaki ikinci sayı değişkenini değiştirmiş olduk. Adı
üstünde değişiyor değil mi?

Bir örnek daha, size "Aklınızdan bir sayı tutun." dedim. Sizde tuttunuz. "Şimdi bırakın gitsin."
Değişken boşta olabilir :)



Resim10 - Değişken


Bakın, ilksayı ve ikincisayı yı ilk önce sırayla 7 ve 5 diye belirledik, sonra ise değiştirdik 4 ve 1 yaptık.
Değiştiler!

Veri Tiplerine Geri Dönüyoruz

"Of ne bitmez şey!" demeyin. Sadece 6 veri tipimiz var.


1. Numbers (Sayılar)
2. String (Karakter Dizileri)
3. List (Listeler)
4. Tuple (Demetler)
5. Dictionary (Sözlükler)
6. Kümeler


Kümelerin ingilizcesi pek kullanmaz o yüzden onu yazmadık. Ancak diğerlerininkini bilseniz iyi olur çok lazım
olacak. Sayılar ile giriş yapalım.

Sayılar


Sayılar 3 kısımdan oluştur. Tam sayılar (integer), ondalıklı sayılar (float) ve karmaşık (complex).
Karmaşık sayılara girmeyeceğiz. Tam sayılar (integer) ve ondalı sayılar (float) için hemen örnek yapalım.



Resim11 - Sayı tipi


Şimdi... İlk önce a adından bir değişken tanımladık. Değişken tanımlamak için eşittir "=" kullanırız.
a = 5 ve b = 7.94 . a tam sayıdır yani integer b ise ondalıklı sayıdır yani float. Ondalıklı sayıları Python
da nokta "." koyarak belirtiriz. Sayıları hep direkt yazarız.

Resimde ilk defa gördüğünüz diğer bir nokta ise "type(a)" yazmışız altına "int" diye, "type(b)" yazmışız altına
"float" diye yanıt almışız. Ben farklı bir yazılım kullandığım için böyle yazdı. Normal Python arayüzünde
"<class 'int'>" diye çıktı alırız. Type Türkçe tip demektir. type(a) diyince Python bunu "a nın tipi nedir?"
diye algılaldı ve bize değer döndü. "<class 'int'>" bu "sınıfı tam sayı (integer)" dır demek.
Daha sonra aynısını b için sorduk ve onun için de bize "<class 'float'>" "sınıfı ondalıklı sayı (float)" dır dedi.

type() fonksiyonu içine verilen değerin tipini döner.

Stringler


Gelelim Karakter Dizilerine. Harfler bir kodcu için altın değerinde. Bakın kodlarda harflerden oluşuyor.
3 farklı şekilde karakter dizisi tanımlayabiliriz.

'' bu birinci şekilde.
"" bu ikinci şekilde.
""" """ bu üçüncü şekilde.

Ama önce ekrana nasıl bir şey bastırıyoruz onu öğrenelim.
Genelde programlamaya girenlerde ekrana "Hello World!" merhaba dünya yazdırılır. Biz de öyle yapalım.



Resim12 - Print Tırnaklar


Resimde gördüğünüz gibi print() fonksiyonu ile ekrana 3 tırnak çeşidi ile de "Hello World!" diye bastırdık.

print() içine verilen veriyi ekrana yazdırmaya yarar.

Aslında 3 farklı tırnak çeşidi de çok fark etmiyor. Sadece bunu " " ve bunu """ """ bilelim. Birinci ile
istediğimizi ekrana bastırabiliriz. İkinci ile de aynı şeyi yapabiliriz tek farkı birinci ile satır atlayamayız,
ikinci ile bunu da yapabiliriz. Örneklere bakalım...



Resim13 - Tırnak Farkı


Gördüğünüz gibi çift tırnak ile satır atlayamıyoruz. 3 tane çift tırnak ile bunu yapabiliyoruz. Tabi satır
atlamanın farklı bir yolu daha var. Onu şimdilik atlıyoruz.

Python da veri tanımlamayı öğrenmiştik. Karakter dizisini (String) leri de nasıl tanımlıyoruz görelim.



Resim14 - Dizi Tanımlama


Bakın bu şekilde de karakter dizisi (String) tanımlıyoruz.

Peki bunları sayılarda olduğu gibi toplayabilir miyiz diyorsanız cevap biraz evet. Ne demek istiyorum görelim.



Resim15 - String Toplama


Bu şekilde yan yana geliyorlar. Matematikteki gibi 2 + 2 = 4 gibi değil 2 + 2 = 22 gibi :).

Listeler


Listeleri iyi bir şekilde öğrenmemiz gerekiyor çünkü onlar bizim epeyce bir işimize yarayacak. Günlük hayatta
bir alışveriş listesi oluşturmuşuzdur hepimiz değil mi? Hadi bir tane daha oluşturalım...

Elma
Armut
Ekmek
Yoğurt

Listemizi oluşturduk. Miktar yazmadık onunla işimiz yok. Liste oluşturmak için her zaman olduğu gibi bir
değişken oluşturuyoruz. Değişken nasıl oluşturulur biliyoruz, isimini yazar eşittir koyar, sonra veriyi
yazarız. Listelerimizi köşeli parantez veya diğer adıyla kare parantez içine yazarız. Hadi yukarıdaki
listeyi Python listesine dönüştürelim!

liste1 = ["Elma", "Armut", "Ekmek", "Yoğurt"]

Listemize liste1 ismini verdik ve hemen değişken olduğu için eşittir koyduk. Sonra bu bir liste olacağı için
köşeli parantez içine listemizde bulunan alacaklarımızı yazdık. Alacaklarımız karakter dizisi olduğu için hepsini
tırnak içine koyduk. Birbirlerine karışmasın diye virgül (,) eklemeyi de unutmadık! Unutmayın virgülleri.

Liste içine sadece böyle karakter dizisi mi koyabiliriz derseniz hayır. Hemen tam sayı (integer) ve ondalıklı
sayı (float) da koyalım.

liste2 = ["Elma", "Armut", "Ekmek", "Yoğurt", 8, 0.12]

Alışveriş listesi üzerine düşünün! Listeler 'ye ne yapabiliriz? Aklınıza ne geliyorsa bir çoğunu Python 'daki
listelere de yapabiliriz. Bir tane daha bir şey ekleyebilir, bir şey çıkarabilir veya sıralayabiliriz.

Python da sıralamalar 0 dan başlar. Aşağı yukarı her programlama dilinde 0 dan başlar şöyle yani.

liste2 = ["Elma", "Armut", "Ekmek", "Yoğurt"]

liste2 nin Elma ögesi 0. sıradadır, Armut ögesi 1., Ekmek 2., Yoğurt 3. sıradadır. Bunu unutmayın, zaten o kadar
çok kullanacağız ki unutmaya vaktiniz olmayacak. Bir listeden istediğimiz elemanı şöyle bastırabiliriz.



Resim16 - Listeden Eleman Almak


Bakın, liste2 nin 1. elemmanı Armut. Çünkü 0 dan başlıyor sıralaması. Listenin ismi ve hemen ardından kare
parantez ile istediğimiz elemanı ekrana bastıralabiliriz.
Birde eleman değiştirmeyi görelim. Değişken tanımlar gibi aslında. Liste adı, hemen ardından köşeli parantez,
değiştireceğimiz elemanın sıra numarası değişken tanımlar gibi eşittir ve yeni değeri.



Resim18 - Eleman Değiştirme


İlk kodda listemizi tanımladık. Sonra göstermek amacıyla print() ile ekrana bastık. Daha sonra 0. elemanını
değiştirdik ve en son kanıtlamak için listeyi tekrar ekrana bastık. :)

Demetler (Tuples)


Aslında listelere çok benziyorlar ama bunları normal parantez içinde tanımlarız ve değiştiremeyiz. Şunu
diyebilirsiniz, değiştirilemeyen liste ne işimize yarar? Elbette yarıyor, birazdan göreceğimiz veri tipi olan
sözlüklerde (Dictionary) de işimize yarayacak. Hemen bir demet oluşturalım!

demet = (1,2,3,4,5,6,7,8,9,10)

Listelerde olduğu gibi demetlerde de istediğimiz elemanı ekrana bastıralabiliriz. Yapalım.



Resim17 - Demetlerden Eleman


Bu resimde izah edecek bir şey yok :)



Resim19 - Eleman Değişmez


Dememiş miydim demetlerde elamanlara dokunamazsınız, değişmezler diye ? :)

Sözlükler (Dictionaries)


Sözlüklere geldik... Eminim bir çoğumuz kesinlikle bir İngilizce ve Türkçe sözlük edinmiştik. Normal bir
Türkçe sözlükle en basit kullanımıyla önce kelimeyi buluruz, karşısındaki anlamına bakarız. Sözlükle işimiz
biter sonrasında :). Python da sözlük oluşturmak için önce sözlüğümüze isim veririz, sonra her veri tipinde
olduğu gibi eşittir kullanırız ve süslü parantez açıp önce anahtarını sonra yazarız sonra iki nokta koyup
değeri yazarız. Bu şekilde anahtar ve değerlerimizi oluşturup, tekrar süslü parantez ile sözlüğümüzü kapatırız.

Anlatırken karmaşık gibi geldiyse bir sözlük oluşturup ne dediğimizi görelim.

sözlük = {"Bir": 1, "İki": 2, "Üç": 3, "Dört": 4, "Beş": 5}

İşte bir sözlük. Bir, İki, Üç, Dört, Beş anahtar, 1,2,3,4,5 ise değerdir.



Resim20 - Sözlük


Bakın, sözlüğe anahtarı verdik ve sonra o da değeri bize verdi. Sonra onu print() ile ekrana bastık.

Tam tersi olsa, değeri versek o bize anahtarı verir mi diye merak mı ediyorsunuz? Marketten bir şey satın
alırken parayı verirsiniz ürünü alırsınız değil mi? Para anahtar, ürün değerdir. Siz ona ürün verip para alabilir
misiniz? Hayır. Sözlükleri de böyle kulanamazsınız.

Kümeler


10. Sınıf Matematiğinden kümeleri bilen bilir. Unutanlar için hem hatırlatalım hem de daha görmeyen veya
bilmeyenler için biraz bahsedelim. Tabi ki bize yarayacak olan kısımdan.

Kümeler kesişebiliyordu birleşebiliyordu. Ayrıca bir kümenin içerisinde aynı eleman 2 kere olmuyordu. Bunları
hatırlıyoruz değil mi ? Harika ! işte burada da aynısı var. Hadi bakalım...

İlk olarak boş küme oluşturalım.

küme = ()

Sonra set() fonksiyonunun yardımıyla içine liste olarak elemanlarımızı verelim. Sonra doğrulamak için kümeyi
ekrana basalım.

küme = set(["Elma", "Armut", "Ekmek", "Yoğurt"])

print(küme)



Resim21 - Küme


Evet, olmuş :)

Kümeye eleman ekleyebilir miyiz diyorsanız ekleriz. Hemen ekleyelim.



Resim22 - Eleman Ekleme


Önce kümemizin ismini veriyor daha sonra .add yazarak bir parentez açıyor ve parantezin içine de kümeye
ekleyeceğimiz şeyi yazıyoruz. Ben kiraz ekledim.

Matematiğe geri dönüyoruz, bir kümeye aynı elemandan ekleyemeyiz. Python da aynı şekilde işliyor.



Resim23 - Aynı Eleman


Bakın tekrar Armut eklemek istedim ama eklemedi. Hata da dönmedi. Dönmezde. Unutmayın!
EĞER KÜMEYE DEĞİLDE LİSTEYE AYNI ELEMANI EKLEMEK İSTESEK EKLERDİ. Liste ve küme farklarından biri.

Evet. Şimdi listemizi bitirdik. Ne listesi diyorsanız, bu da bizim için bir listeydi:


1. Numbers (Sayılar)
2. String (Karakter Dizileri)
3. List (Listeler)
4. Tuple (Demetler)
5. Dictionary (Sözlükler)
6. Kümeler


Hayırlı olsun!

Alıştırmalar


1- Boyunu santimetre cinsinden yani integer , kilonu float olarak yani metre cinsinden değişken tanımla. Bu iki
değişkeni toplayarak ekrana yazdır. Hatırla! Float ve integer neydi ?

2- Mahalleninin ismini bir string olarak tanımla. Hatırla! String neydi ?

3- Bir tane alışveriş listesi hazırla. Liste olarak tanımla.

4- Yaşadın ülkeyi, ili, merkezi, mahalleyi ve sokağı bir demete tanımla.

5- Sevdiğin 3 kişinin isimleri ve tuttuğu takımlar olan bir sözlük oluştur.
Herhangi bir kişinin anahtarını girerek değeri ekranda yazdır.

6- İçerisinde 5 kişinin olduğu bir küme tanımla. Ardından bu kümeye 2 kişi daha add metoduyla ekle.


1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15-Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html
 
Moderatör tarafında düzenlendi:

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant
Cevap: Her Yaştan İnsan için Python (Basit, Net ve Örnekli.) - Matematik

rNHf4y.png


Öklid ile Matematiğe Giriş, Pardon Python İle :)



Resim24 - Matematik


Artı ( + ) ve ( - ) yi açıklamıyorum.

Python da çarpma işlemi olarak yıldız ( * ) kullanılır.

Bölme işlemi olarak ise iki tane eğik çizgi ( // ) kullanılır.

Ama iki eğik çizginin üzerinde tek bir tane eğik çizgi ( / ) kullanmışız. O ne dediğinizi duyuyor gibiyim.

Farkettiyseniz o da bölme işlemini yaptı. İki eğik çizgi ile ( // ) tek eğik çizginin ( / ) farkı tek eğik
çizgi ondalıklı olarak yani float olarak değer döndürür. Print ile sonuçları da ekrana bastık.

Unutmayın matematikte işlem önceliği ile Python daki işlem önceliği aynıdır. Hatırlayalım.

Parantez İçi
Üslü Sayılar - Kökler
Çarpma - Bölme
Toplama - Çıkarma

Birden fazla işlem var ise soldan sağa gidilir.

30 - (7 * 4) // 2

Önce parantez içi, sonra 2 ye bölüm en son 30 dan çıkarma. 28 / 2 = 14. 30 - 14 = 16.



Resim25 - İşlemler


Matematik güzel şey.



Resim26 - Örnek


İşlem önceliğiyle yaptık. Problem çözelim.

"Bir mobil oyunda, oyuncunun elde ettiği puan sahip olduğu altın sayısının 3 ile çarpımı, sahip
olduğu yiyecek miktarının 2 ile çarpımı ve sahip olduğu can sayısının 1000 ile çarpımının toplamı şeklinde
hesaplanıyor. 300 altını, 200 yiyeceği ve 3 canı olan bir oyuncunun kaç puanı vardır ?"

altın = 300
yiyecek = 200
can = 3
print((altın * 3) + (yiyecek * 2) + (can * 1000))



Resim27 - Problem Örneği


4300 puanı varmış. Allah bereket verin :)

Matematik her zaman 4 işlemden ibaret değil. Daha farklı konular var içinde. Her matematik işlemini yapamayız,
bazılarını da tek kodla yapamayız. Burada kütüphaneye gitmek gerekiyor ya da python da onları getiririz :)

Kütüphanelerin içinde fonksiyonlar var. Örneğin print(), type() ve set() bir fonksiyondur. Bakın bunlar ne kadar
işimize yarıyor. Şunu düşünsenize, ekrana yazı yazdırmak için onlarca kod yazmak gerekirse ne yapardık. Bizde
işimizi çok ve çok kolaylaştırmak için kütüphanelerin içindeki fonksiyonları kullanacağız. Başlayalım.

Öncellikle yuvarlamaları görelim. Ancak ondalıkları tam sayıya yuvarlayacağız.

import math

diyerek kütüphanemizi dahil edelim. Kullanacağımız fonksiyon ceil() fonksiyonu. Fonksinonu kullanmak için
önce onun bulunduğu kütüphane olan math kütüphanesinin ismini, sonra içinde olduğunu belirten nokta ( . )
daha sonra ise fonksiyonun adını yazıyoruz.



Resim28 - Ceil()


math.ceil() dedik ve kullandık. İçinde yuvarlayacağımız sayı geldi. Birde bunun bir farklı versiyonu var,
o ise floor().



Resim29 - floor()


Bakın aşağıya yuvarladı. Merak ediyorsanız ceil() in içine 2.000001 verseydik bile 3 e yuvarlar.



Resim30 - fmod()


fmod() fonksiyonu ise kalanı verir. İlk sayı bölünen, ikinci sayı ise bölendir.
30, 10 ve 5 e tam bölünürken 7 ye bölünmez. Kalanı ise bize verdi..



Resim31 - pow()


pow() fonksiyonu sayının üssünü bulmaya yarar. ilk sayı taban, ikinci sayı ise kuvvettir. Taba kuvvet kısaca.
2 nin 3. ve 5., 3 ün ise 3. kuvvetini bulduk.



Resim32 - sqrt()


sqrt() fonksiyonu elinizdeki sayının hangi sayının karesi olduğunu verir. Tek bir değer alıyor anlaşıldığı gibi.
İçine 9 verdik ve 3 ü verdi. Yani 3 ün karesi 9. 144 verdik 12 döndü yani 12 nin karesi 144. 5 net bir sayının
karesi değil. O yüzden öyle döndü. Ben bir kaç kare bırakayım size...

1 k 1, 2 k 4, 3 k 9, 4 k 16, 5 k 25, 6 k 36, 7 k 49, 8 k 64, 9 k 81, 10 k 100. (k, karesi demek.)



Resim33 - Pi ve e


Python da hazır olarak pi ve e var. Pi ve e nin değerini görüyoruz...
Bunlarda parantez yok anladığını gibi bunlar bir değer...

1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15- Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html
 
Moderatör tarafında düzenlendi:

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant
Cevap: Her Yaştan İnsan için Python (Basit, Net ve Örnekli.) - Daha Üst Seviye Stringler

rNHf4y.png


Stringler (Karakter Dizileri)


Evet, artık bir seviyeye kadar geldik. Şimdi önceden gördüğümüz karakter dizilerini yani string leri bu sefer
daha ileri seviye olarak göreceğiz. Endişelenmeyin Python kolaydır.

Toplama işlemi yapmıştık stringlerde. Aslında toplama olmadığını yan yana yazıldığını görmüştük :)
Peki çarparsak ?



Resim34 - string çarpımı


"Elbet bir gün buluşacağız." yazısını 10 ile çarpınca ekrana 10 kere yazıldı. Ne oldu? Sanki 10 ile çarpmışız
gibi 100 mü yazacaktı :) print() ile de ekrana bastık.

Şimdi stringler ile (Karakter Dizileri) ile işlemler yapacağız. Bir tane isim diye değişken oluşturup değer
verelim. String olması için ne gerekiyordu? Tabi ki "" (çift tırnak).

isim = "Atmaca"

Bildiğiniz gibi bir metindeki karakter sayısını bulma ve kelime sayısını bulma siteleri var. Bir çok metin
uygulamasında da var bu özellik. Word de dahil. Bizde karakter sayısı bulmayı görelim.



Resim35 - len()


len() fonksiyonu içine tek bir tane veri alır. isim değişkenini verdik, stringdeki karakter sayısını bize
verdi. Sonra direkt string (Karakter Dizisi) verdik onunda sayısını verdi. En son verdiğimiz listedki eleman
sayısını verdi. Eğer liste içinde string (Karakter Dizisi) olsaydı onu 1 diye sayar, unutmayın! Aynı alışveriş
listesindeki gibi.

Şimdi indis almayı görelim. İndis bir string (Karakter Dizisi) içindeki karakterlerin sıra numarasına denir.
Python da sıralama 0 dan başlar unutmayın!



Resim36 - İndis


Bakın, [] Köl parantez içine verdiğimiz indis ile bize o harfi veya rakamı döndü.

Atmaca | A 0, t 1, m 2, a 3, c 4, a 5.

Soldan sağa doğru gittik. Bunu tersten de yapabiliriz.



Resim37 - Ters indis


Ve bu şekilde - (eksi) şekilde değer vererek yapabiliyoruz. Unutmayın, bu sefer -1 den başlıyoruz.

Sadece 1 karakteri mi basabiliyoruz diye soranlar için ise cevabı verelim. Hayır! Hece veya istediğiniz kadar
karakter bastırabilirsiniz.



Resim38 - String Parçalama


Şimdi bu resimde birden fazla örnek var sırayla gidelim. String yani Karakter Dizisini parçalama da diyebiliriz
bu işleme.

isim[1:] de 1. karakterden sonraki tüm karakterleri al yaptık.

isim[2:] de 2. karakterden sonraki tüm karakterleri al yaptık.

isim[1:4] de 1. karakterden sonra 4. karaktere kadar al yaptık. 4 dahil değil.

isim[0:4] de 0. karakterden sonra 4. karaktere kadar al yaptık. 4 dahil değil.

isim[0:3] de 0. karakterden sonra 3. karaktere kadar al yaptık. 3 dahil değil.

Bu işlemleri tersten yapmak için ise - (eksi) kullanıyoruz.



Resim39 - Ters İşlem


Şimdi bir string (Karakter Dizisi) karakter dizisi içinde kaç tane aynı harf veya sayıdan var diye bakalım.



Resim40 - .count()


.count() fonksiyonu içine tek bir tane veri alır. isim.count("a") dediğimi zaman isim değişkeninin içinde
kaç tane "a" harfi var ekrana basıyor. Küçük büyük harf duyarlıdır. Ayrıca bu şekilde aynı heceden kaç tane var
diye de bakılabilir.



Resim41 - .upper() | .lower()


Bu isim.upper() kod ile isim değişkeninin her karakterini büyük harf yapabiliyoruz. isim.lower() ilede isim
değişkeninin her karakterini küçük harf yapabiliyoruz.



Resim42 - .startswith()


isim.startswith("A") ile isim değişkeninin ilk karakterinin büyük A olup olmadığını kontrol ediyoruz. Büyük
küçük harf duyarlıdır. Hece ile de başlayıp başlmadığı kontrol edilebilir. True başlıyor, False başlamıyor
diye değerlendirilebilir.

Gelelim, arama yöntemine. Bazen uzun bir string (Karakter Dizisi) içinde bir cümleyi vs. aramamız gerekebilir.



Resim43 - .index() ve .find()


isim.index("a") ve isim.find("b") dediğimizde aynı cevabı, 3 cevabını alıyoruz. Çünkü a
harfi ilk defa 3. indiste yer alıyor. Fakat "r" harfini arattığımızda isim.index("r") kodu hata
dönderirken isim.find("r") kodu -1 sonucunu dönderiyor.

Bunun sebebi şu. İndex fonksiyonu sadece harfin veya istenen ifadenin string içerisinde
olma durumunda çalışırken, find fonksiyonu harfin veya istenen ifadenin olmaması
durumunda da -1 değerini dönderiyor ve çalışıyor. Bu açıdan find , index e göre daha üstün
bir fonksiyon olarak görülebilir.



Resim44 - .replace()


Yeni bir değişken oluşturdum. şehir = "Angara" diye. Ama Resmi olarak Ankara dır adı. .replace() de bu işe
yarıyor. Değiştirmek! İçine iki veri alıyor. (Parametre diyoruz aslında.) İlki değiştirilecek karakter(ler)
ikincisi ne ile değiştirileceği. Sonra değişkenin orjinali ni de ekrana bastırdım. Bakın o değişmiyor.

Şöyle bir şey var, bu o string (Karakter Dizisi) içinde bulunan tüm g leri k yapar. Bunu engellemek için ise
şöyle de yazabiliriz. şehir.replace("Angara","Ankara")

Şöyle 3 fonksiyonumuz var;

isdigit() = Tamamı sayıdan oluşuyorsa true, eğer içinde harf varsa false cevabını verir.
isalpha() = Tamamı harften oluşuyorsa true, eğer içinde sayı varsa false cevabını verir.
isalnum() = İçinde harf veya sayılar varsa true cevabını verir.



Resim 45




Resim 46




Resim 47


Bakın. Sıra sıra hepsine fonksiyonları uyguladım.



Resim48 - Hata


Şöyle bir şey var. String (Karakter Dizisi) oluştururken aynı şekilde cümle içinde çift tırnak kullanmak
gerekebilir. Bu sebeple hata veriyor gördüğünüz gibi. String başlangıç ve bitiş tırnağı haricinde hata verecek
olan çift tırnakların önüne ters eğik çizgi koyarak hatayı çözebilirsiniz.


1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15- Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html
 
Moderatör tarafında düzenlendi:

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant
Cevap: Her Yaştan İnsan için Python (Basit, Net ve Örnekli.) - Daha Üst Seviye Listeler

rNHf4y.png


Listeler


Niye mi geri döndük? Çünkü şimdi listelere tamamen hakim olacağız.



Resim49 - Liste Oluşturma


İçinde veri olan bir listeyi daha önce de oluşturmuştuk. Boş liste oluşturmak için değişkene böyle [] atamak
işimize yarıyor. Ya da değişken oluşturup değer kısmına list() fonksiyonunu koyabiliriz. Ama list fonksiyonu
parametre -içine değer- almaz. Sonradan eklemek gerekir.



Resim50 - İndis Liste


İndisleri işlemiştik. Listelerde de oluyor aynı mantık. Sadece stringlerdeki karakter yerine listede ki
elemanlar o yeri alıyor.



Resim51 - Eleman Ekleme


.append ile listeye eleman ekleyebiliriz. İçine tek bir parametre alır.



Resim52 - Listede ki Elemanlar


Bazı fonksiyonları iç içe kullanabiliyoruz. Mesela bu örnekte olduğu gibi. meyve listesinin içinde elemanların
sayısını len() ile alıyoruz. Sonra print() ile ekrana basıyoruz.



Resim53 - Liste Birleştirme


+ ile iki listeyi birleştirebiliriz. En sonun da listeyi print() ile bastırdım type() ile tiğini ekrana bastım.
Sizde type() "<class 'list'>" dönebilir. Sorun yok aynı şey olduğunu zaten biliyorsunuz :)



Resim54 - Liste Çarpma


Kullanır mısınız bilmem ama bir listeyi bir sayı ile çarparak o listede ki elemanları sayı adedi kadar
arttırabilirsiniz. Eğer liste değil küme olsaydı aynı elemandan 2 tane ekleyemezdik değil mi? Liste yi
3 e katlayıp a diye değişken oluşturduk. Sonra içeriğini ve değerini ekrana bastık.



Resim55 - Listeden Eleman Alma


.pop ile indis ini parametre olarak vererek o elelamnı listeden kaldırabiliriz. Sayanora Kivi! (Japonca: Elveda)



Resim56 - Listedeki Elemanı Güncelleme


Değişken tanımlar gibi liste adını veriyor, sonra köşeli parantez açıp değişecek elemanın indisini daha sonra
eşittir koyup yeni elemanının değerini veriyoruz.



Resim57 - Liste Kopyalama


Bildiğiniz gibi sebze meyve neye göre ayrılıyor muhabbeti hala var. Bizde diyoruz ki "Benim için hepsi sebze,
kim değiştirecek?". :)

Liste içinde bir arama yapmamız gerekebilir. Bunun için uzun bir liste olması gerekiyor. Ben de direkt bir
string (Karakter Dizisi) ni önce listeye çevirdim. Bu şekilde çevirebiliriz.



Resim58 - string.split()


.split() içine bir tane parametre (veri) alıyor. Ben boş bıraktım ve bu şekilde ayırdı. Kelimelerden yani. Kendi
varsayılan parametresini kullandı.



Resim59 - \n Kaçış Dizisi


.split() ile bu şekilde boşluklardan yazdığım metni parçaladım. Şimdi farkettiyseniz burada \n var orada.
Normalde benim satır atladığım yere gelmiş. Kaçış dizisi adını verdiğimiz bunun gibi bir kaç ters eğik çizgi var.
Mesela bir tanesini yukarıda görmüştük. Çift tırnakların karışmaması için. Bu \n ile cümeleye satır
atlattırabiliriz. İlla 3 tane çift tırnak kullanmk gerekmiyor...



Resim60 - Kaçış Dizisi


Örnekte gördüğünüz gibi :) Bunu çok kullanıyoruz. Unutacağınızı sanmıyorum.

Şimdi bir string (Karakter Dizisi) i liste yaptık. Konuya geri dönelim bunun içinde nasıl bir kelimeyi aracağız.



Resim61 - Listede Arama


Bu resimde arama yaptık. Önce arayacağım kelimeyi ki kelime olduğu için string şeklinde yazdık sonra "in"
diyoruz ve en son nerede arayacağımızı söylüyoruz. Ancak bize kelimenin nerede olduğunu değil, bulunup (True)
bulunmadığını (False) döndürdü. Sonra arama sonucumuzu print() ile ekrana bastık.



Resim62 - .reverse()


Yavaştan listeleri bitiriyoruz. Şimdi elimizde olan listeyi ters çevirmemiz gerekirse .reverse() fonksiyonunu
kullanıyoruz. Resimdede gördüğünüz gibi orjinal listeyi terse çevirdi. print() ile li ekrana bastık.



Resim63 - min() ve max() fonksiyonu


Bu iki fonksiyonu adıdan anladınız sanırım :) Min minumum yani en küçük, max maksimum yani en büyük olanı
veriyor bize. İlk sayı listesinde minumum yani ve maksimum u print() ile ekrana yazdık.

Aynı şekilde stringlerde de kullanılıyor. Sözlük sırasına göre tabi ki.



Resim64 - sort()


.sort() fonksiyonu ile bir listeyi sıralayabiliriz. Stringler sözlüğe, sayılar sırasına göre...

Liste içi liste de yapabiliriz. Bunu şöyle düşünün; Manavdan alacağınız ayrı, kırtasiyeden alacağınız ayrı.



Resim65 - Liste ve Liste


Bakın onu da bu şekilde yapabiliyoruz. Bildiğimiz liste oluşturma ve birleştirme şeklinde liste. Hey! Liste
birleştirirken string gibi çift tırnak içine liste adını yazmayın. Çünkü listeler string değil değişkendir.
Unutmadığınız değil mi değikeni?


1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15-Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html
 
Moderatör tarafında düzenlendi:

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant
Cevap: Her Yaştan İnsan için Python (Basit, Net ve Örnekli.) - Daha Üst Seviye Demetler

rNHf4y.png


Demetler




Resim66 - Demet Oluşturma


Bildiğiniz gibi demetlerde listelere nazaran bir çok özellik yok. Niye tekrar işliyoruz derseniz bir kaç şeyden
bahsetmemiz gerekiyor. Ben bir demet oluşturdum. Unutmayın. Demetlerde listelerde olduğu gibi köşeli parantez
değil direkt parantez kullanılır. İçin boş parantez boş demettir. En son tipini gördük. Tuple yani demet.



Resim67 - Str ve Tuple


Şimdi demetin içine sadece bir tip veri koyarsak o demet olmuyor. Bakın type() kullanınca str döndü yani string.
Ama biz demet istiyoruz, nasıl olacak derseniz ufak bir virgül (,) koyarak. Bu onu demet yapar.



Resim68 - Demetten Eleman Alma


Demeti direkt ekrana bastırabildiğimiz gibi istediğimiz elemanın bastırılabilmesini de isteyebiliriz. Aynı
listelerde olduğu gibi [] köşeli parantez ve içine de istediğimiz elemanının indisi.



Resim69 - Demet İçi Liste


Bir demet içine iki liste verebiliyoruz bakın. Sayısı arttırılabilir. İçinde direkt eleman olan demette eleman
almk için köşeli parantez içine elemanın indisi veriliyordu. İçinde iki liste olunca ilk olarak veri almak
istediğimiz listeninin indisini köşeli parantez içine koyuyor sonra bir köşeli parantez daha açıp o listeden
almak istediğimiz elemanın indisi içine koyuyoruz.



Resim70 - .count()


Bir demet içindeki aynı elemandan kaç tane olduğunu .count() ile buluyoruz. İçine bir tane paremetre veriyoruz
o da tekrarı olduğunu düşündüğümüz string veya integer (Tam Sayı). Demeti çiçek demeti gibi düşünün. .count()
ile demetimizde kaç tane "Gül" var onu öğrendik.

Gül deyince aklıma o geldi. Bir kadının gülüşü makyajdan daha çekici gelir erkeğe... :(



Resim71 - Demetteki Eleman Sayısını Öğrenme


Bir demet içinde kaç tane eleman olduğunu yine len() ile öğrenebiliriz. len() içine demetimizin ismi olan
demet kelimesini verdik ve print() ile cevabını ekrana bastık.



Resim72 - .. in ..


Listelerde olduğu gibi demet içinde de bir elemanın var veya yok olduğuna bakabiliriz. Listedekine göre bir şey
değişmedi :)

Bildiğiniz gibi demet içinde değişim yapamadığımızı belirttik. Eleman ekleyemez ya da çıkaramayız.



Resim73 - Listeyi Demete Dönüştürme - tuple()


Bir listeyi tuple() fonksiyonu ile demet olarak kopyalayabiliriz. Unutmayın liste hala liste,
demet = tuple(liste) kodu demet ismine bir değişken oluşturdu. Bu değişkene liste değişkeninin elemanlarını
demet veri tipinde ekledi.

Demeyi unutmayayım. Sakurayı araştırın :) Seveceksiniz...


1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15-Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html
 
Moderatör tarafında düzenlendi:

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant
Cevap: Her Yaştan İnsan için Python (Basit, Net ve Örnekli.) - Daha Üst Seviye Sözlükler

rNHf4y.png


Sözlükler




Resim74 - Boş Sözlük


Bir değişken olarak sözlük tanımlamak için süslü parantez kullandığımızı söylemiştim. Bir tane tanımladık, boş
olmasına karşın ekrana bastım ve tipini de bastırdım.



Resim75 - Sözlük


Bir sözlüğün içini gördüğünüz gibi dolduruyoruz. Sözlükteki her eleman için bir anahtar (key) ve bir değer
(value) vardır. Anahtar yazılır, sonra iki nokta konup değeri yazılır. Sonra bir eleman daha konacaksa virgül
(,) atılır. Yine aynı şekilde yapılır. Unutmayın, süslü parantez olunca sözlük oluyor!

Ben öğrencileri ve notlarını yazmıştım. Hop Esra yı unuttuk. Hemen ekleyelim.



Resim76 - Sözlüğe Eleman Ekleme


Bir sözlüğe önce sözlük ismi, sonra köşeli parantez açıp içine de anahtarı (key) verip değişken tanımlar gibi
eşittir koyup sonra değeri veririz.
sözlüüğünismi[anahtar] = değer
Sözlüğün ilk halini ve son halini bastım ekrana.

Hay aksi! Salihin notunu yanlış girmişiz. 15 olacakmış. Halledelim hemen.



Resim77 - Eleman Güncelleme


Bir elemanı güncellemek için aynı ekler gibi yapıyoruz. Önce sözlük ismi, sonra köşeli parantez açıp içine de
anahtarı (key) verip değişken tanımlar gibi eşittir koyup sonra değeri veririz.

Yasin farklı sınıftaymış karışmış. Onu kaldıralım hemen.



Resim78 - Eleman Kaldırma - del


del ile sözlükten eleman kaldırdık. Kullanımı basit aslında. del diyoruz sözlük ismi köşeli parantez ve içine
de anahtarı verip kaldırıyoruz.

Diyelim bir öğrenci notunu sevmedi -ki bu Salih olacaktır- tüm listeyi sildi!



Resim79 - .clear()


Salih .clear() ile kaldırdı tüm notları. Sözlük ismi ve .clear() fonksiyonu ile tüm sözlük boşaltılabilir.
print() ilede ekrana bastık.



Resim80 - .pop()


Listelerde kullanmıştık bu fonksiyonu. Bir elemanı kaldırmak için bunu da kullanabiliriz. sözlük ismi ve .pop()
içine parametre olarak kaldırılacak elemanın anahtarını alıyor.



Resim81 - .popitem()


Bu fonksiyon yani diğer bir tabirle sözlüğün metodu şu şekilde kullanılıyor. sözlük ismi ve .popitem() içine
parametre almaz. Sözlükten rastgele bir elemanı kaldırıyor. Ne işimize yarar derseniz öğretmeni sevmiyorsanız
ona uğraş çıkarmış olursunuz :)



Resim82 - Sözlük Çoğaltma


Evet diğerlerindeki gibi yapılıyor. type() kullanma gereği duymadığım çünkü verdiği çıktı da zaten süslü parantez
kullanmış...



Resim83 - .keys() - .values() - .items()


En başta anahtar ve değerden bahsetmiştik. Sözlük ismi ve .keys() metodu bize sözlük içindeki anahtarları bir
liste içinde verir.

Sözlük ismi ve .values() metodu bize sözlük içindeki değerleri bir liste içinde verir.

Sözlük ismi ve .keys() metodu bize sözlük içindeki hem anahtarları hem değerleri bir liste içinde verir. Bu liste
içinde demet şeklinde o sözlüğün elemanları var görüldüğü gibi.



Resim84 - in


O kadar kullandık yine aynı şekilde... Aranacak değer, in ve aranacak yer. Cevabı görüldüğü gibi True ve False
şeklinde döndürüyor.


1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15-Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html
 
Moderatör tarafında düzenlendi:

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant
Cevap: Her Yaştan İnsan için Python (Basit, Net ve Örnekli.) - Fonksiyonlar

rNHf4y.png


Fonksiyonlar


Fonksiyonlar adını çok duyuyorduk şimdi daha detaya ineceğiz. 10. Sınıf olanların aklıma matematik geldi...
Polinomlar falan. Aslında matematik ve programlama aynıdır. İkisi de genel olarak sabit değişmez.

Fonksiyonlardan bazılarını kullanmıştık şimdi sıra kendi fonksiyonumuzu tasarlama da :) Bu bilgiye sahipsiniz,
korkmayın... Başlıyoruz.

Öncellikle fonksiyon tanımlamak için İngilizcede tanımlamak anlamına gelen define kelimesinin kısatlası olan
"def" yazıyoruz sonra fonksiyonumuzun ismini, bir parantez açıp kapatıp iki nokta ekleyip altına da tab
atıyoruz sonra ise yapacağımız işlemi yazıyoruz. Unutmayın fonksiyonu çalıştırmak gerekir...



Resim85 - def


Bakın fonksiyonu yaptık ve birde onu çalıştırdık. Hatırlıyorsanız print() de bir fonksiyondu. Ve bizde kendi
fonksiyonumuzu () parantez ile çalıştırdık. Buna fonksiyon çağırma denir. Bir fonksiyon tanımlanınca çalışmaz.
Eğer öyle olsaydı durup dururken print() ve diğer tüm fonksiyonlar çalışırdı. Sadece type() çalışsa içine
parametre almadığı için hata verirdi :)



Resim86 - Tekrar


Fonksiyon çağırmak eğlenceli!



Resim87 - input()


Şimdi devam edebilmek için fonksiyonu ekrandan kaldırdım. Yeni bir fonksiyonu öğreneceğiz. Bu input() fonksiyonu.
Bu fonksiyon ile programı çalıştıran kişiden bir şey alabiliriz. Ben sayı istedim mesela. İçine bir tane
parametre alıyor bu parametre kullanıcıdan veri alırken yanında gösteriliyor. Bakın sayı gir dediğim yer altta
21 sayısını girdiğim yerde gösteriliyor. Sonra ekrana bastık. Aldığımız veriyi ise a değişkenine aktardım ki
kullanabileyim.

Hadi toplama fonksiyonu yazalım. Ne lazım bize, kullanıcıdan 2 sayı almak ve toplamı ekrana basmak. Bunu
fonksiyon ile yapalım...



Resim88 - int()


Şimdi resimdeki ilk fonksiyon bizim yaptığımız toplama fonksiyonumuz. Fark ettiyseniz int() diye bir şey var
orada. input() ile aldığımız her şey bize string (Karakter Dizisi) şeklinde geliyor. int() içine verilen veriyi
imkan varsa string den integer (Tam Sayı) a çevirir. Ve birinci toplama başarılı oldu.

Aşağıya bir fonksiyon daha ekledim, bakın o fonksiyonu. int() olmadan aynısı. Ama çıktıya bakın birinci ve
ikinci sayıyı yan yana yazmış. Stringlerde toplama geldi aklınıza değil mi? Evet o gelmeli çünkü ikincisi o. :)

Matematiğe geri dönüyoruz. Bir dairenin alanını hesaplayalım... Tabi ki fonksiyon ile.



Resim89 - float()


Resimde float() diye bir fonksiyon gördük. int() i görünce bu da alınan değeri float (Ondalıklı Sayı) yapıyor
diyorsanız doğrusunuz. Helal size. Dairenin alanı pi çarpı r karedir. Yani pi sayısını yarı çap çarpı yarı çap
çarpımı ile çarpıyoruz. Kullanıcıdan yarı çapı alıp fonksiyonumuzu yaptık.

Şimdik artık biraz daha ileri gidiyoruz. Biz print() fonksiyonunu içi boş mu kullanıyoruz? Hayır, içine bir
parametre veriyoruz değil mi? He, artık bizde öyle parametre verebileceğimiz fonksiyonu yapıyoruz şimdi.



Resim90 - Parametre


Ve bir parametre alan fonksiyon yazdık. Güzel değil mi? Sadece fonksiyon tanımlar gibi yapıyoruz ve parantezin
içine parametre olarak alacağımız neyse isim veriyoruz. Değiken gibi bir nevi. Ama fonksiyon dışında çalışmaz.
Bu input() gibi string almaz içine verileni. Neyse o türde.



Resim91 - İyi ki doğdun!


Az önce demiştim parametre için rastgele bir isim verebiliriz diye verdikte. Ben isim olarak isim dedim ve bir
doğum günü fonksiyonu yaptım. İyi ki doğdun bunu okuyan!

Fark ettiyseniz resimde print() in içine 2 değer verebildim. Birden fazla değer verilebilir. Şuna dikkat edin,
değerler arasında virgül (,) koymak gerekiyor.



Resim92 - Parametre Hatası


İçine parametre alan bir fonksiyona parametre vermezseniz bu şekilde hata döner.



Resim93 - Varsayılan Parametre


Şimdi parametre alan bir fonksiyona parametre vermezseniz hata döner biliyorsunuz. Bunu nasıl mı çözüyoruz?
Varsayılan parametre belirleyerek. Fonksiyonun parantezine bakarsanız orada sanki bir değişken tanımladık. Ama
sadece orada kullanılır o. Aynı fonksiyonu ilk çalıştırdığımda içine parametre olarak "Ahmet" i verdim. Ve
çalıştı. Aynı fonksiyonu boş çalıştırınca bu sefer varsayılan parametresini kullandı. Yani "Esra" yı.

Anlamadıysanız resimlere tekrar bakın ve yazdığımı tekrar okuyun. kesinlikle anlayacaksınız...



Resim94 - Ortalama


Bir şeyin ortalmasını bulmak için kaç tane veri varsa toplayıp veri sayısına böleriz. Resimde de aynen öyle
yaptık. Bir fonksiyon tanımladık ve içine 3 parametre almasını sağladık. Sonra uygun şekilde kullandık.
Dikkat çekmek isterim fonksiyonu çağırırken parametreler arasına virgül (,) koymayı unutmayın.
Aklınıza print() böyle mi çalışıyor diye soru geldiyse hayır. İstediğiniz kadar parametre almanızı sağlayan bir
kod var. O ileri seviye es geçiyorum.

Matematiğe geri dönüyoruz diyip durdum. O hesaplama kısmına tekrar bakalım. İşlem önceliği biliyorsunuz böyle;

Önce parantez
Üslü-Köklü
çarpma-bölme
Toplama-çıkarma
Çoklu işlemlerde işlem soldan sağa olur.

Ancak orada ben hesaplama değiikenini böyle yazdım. (not1 + not2) / 2 Yani parantez ile işlem önceliği verdim.
Onu kaçırmayın. Bu şekilde parantez ile işlem önceliği verebiliriz. Birde eğer notları 10 + 15 olsaydı ortalaması
12.5 olurdu. O yüzden // değilde / kullanırız. Çünkü // bu 12 diye yazardı ekrana.


1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15-Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html
 
Moderatör tarafında düzenlendi:

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant
Cevap: Her Yaştan İnsan için Python (Basit, Net ve Örnekli.) - Operatörler

rNHf4y.png


Operatörler


Günlük hayatta işimizi kolaylaştıran bazı ifadeler var. Ve, ya da gibi. Bunlara programlamada operatör diyoruz.
Birde fazla operatör var ve gruplara ayrılıyor kendi içinde. Hadi şu operatörleri yakından tanıyalım.

* Aritmetik (Matematiksel) Operatörler
* Karşılaştırma Operatörler
* Atama Operatörleri
* Mantıksal Operatörler
* Üyelik Operatörleri
* Kimlik Operatörleri

Aritmetik Operatörler


Matematikte kullandığımız operatörlere aritmetik operatör diyoruz. Gördüğümüze ek bir kaç operatör...



Resim95 - Aritmetik Operatörler


Karşılaştırma Operatörleri


Bunlar ise karşılaştırma yapar. O ondan büyük, bu buna eşit gibi..



Resim96 - Karşılaştırma Operatörleri




Resim97 - Karşılaştırma Operatörleri 2. Parça


Atama Operatörleri


Bunlar şimdilik biraz garip görünebilir. Ama ilerledikçe örnek yapacağız.



Resim98 - Atama Operatörleri


Kolay gibide aslında. Çünkü direkt dediğimizi yapıyor. Eşittir, artı eşittir, çarpı eşittir...

Mantıksal Operatörler


Bunlar ve, veya değil aslında.

A = 1 ve b = 2 ise doğru,

a veya b 1 ise doğru,

a doğruysa yanlış..



Resim99 - Mantıksal Operatörler


Üyelik Operatörleri


Hatırlıyorsanız in operatörünü kullanmıştık. Burada o var.



Resim100 - Üyelik Operatörleri


Kimlik Operatörleri


Eşit mi diye sorar. Eşitsiz...



Resim101 - Kimlik Operatörleri


1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15-Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html
 
Moderatör tarafında düzenlendi:

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant
Cevap: Her Yaştan İnsan için Python (Basit, Net ve Örnekli.) - Koşullu Durumlar

rNHf4y.png


Koşullu Durumlar


Mesela Anneniz evde ekmek yoksa (-sa eki) ekmek al dedi. Bu koşullu durum, ekmek almanız için eve ekmek olmaması
lazım. Sağlık raporunu getirirsen (-se eki) seni takım alırız. Bu da koşullu, takıma girmek için sağlık raporunu
getirmek gerekiyor...

Python da koşullu durumlar için "Eğer" anlamın gelen İngilizce kelime olan "if" kullanıyoruz.



Resim102 - if


Diyelim internete erişmek için 15 yaş üstü olmak gerekiyor. if ile yaptık bunu. Az önceki karşılaştırma
operatörü sayesinde. İlk örnekte yaş 15 ten büyük olduğu için if bloğu çalıştı ve ekrana yazı geldi. İkinci
durumda if çalışmadı. Çünkü gerekli şartı karşılamıyor.



Resim103 - if


Değeri kullanıcıdan da alabiliriz değil mi :) İlki uyduğu için çalışırken diğeri uygumadığı için çalışmadı.
int() kullanmayı unutmayın string ile integer büyük küçük diye karşılaştırılamaz.



Resim104 - İnstagram'a Girmek


Bakın, İnstagram giriş örneği!

Peki ya bir kullanıcı daha varsa o ne yapacak? Bir daha "if" kullanmıyoruz, bundan sonraki bütün ihtimaller için
"elif" kullanıyoruz..



Resim105 - elif


Bakın, artık elif kullanarak birçok olasılık ekleyebiliriz. Sadece varsa o koşullu durum gerçekleşir. Diğerleri
çalışmaz.

Peki ya bilgiler eşleşmezse?



Resim106 - else


Bakın if e veya eliflerden birine girmiyor. Koşuluna uymuyor yani. else burada devreye giriyor, eğer hiçbirine
uymuyorsa else çalışır.


1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15-Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html
 
Moderatör tarafında düzenlendi:

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant
Cevap: Her Yaştan İnsan için Python (Basit, Net ve Örnekli.) - Döngüler


rNHf4y.png




Döngüler



Döngü ne demek? TDK ya göre, isim olarak 1. anlamı "Herhangi bir olayın birden fazla tekrarlanması." demekmiş.

Ha işte bizimkilerde buna benzeyecek.



Diyelim ceza aldın ve "Bir daha yapmayacağım." yazman gerek. 100 çok fazla. Hadi bunu kısaltalım.







Resim107 - for x in range()




Şimdi buradaki mantığı normal olarak anlamadınız.



for birgeçicideğişken in çoğulveri:



Bu bir döngüdür. birgeçicideğişken dediğime herhangi bir şey diyebilirsiniz genelde i denir. in değişmez,

çoğulveri dediğim ise bir liste veya demet olabilir. Bu döngü çoğulveri deki ilk elemanı alacak ve geçici olarak

birgeçicideğişken dediğim değişkene atayacak. Kodun sonunda iki nokta :)) var bundan bir alttaki kodda ise

ilk önce tab atarak birgeçicideğişken elemanını kullanabilirsiniz.



for x in range(1,100):



range() ye 2 parametre verdim. 1. si başlangıç, 2. bitiştir. Kısaca 1 den yüze kadar say dedik o da saydı. Ve

ve her bir elemanı diyişinde x e geçici olarak atadı. Ancak şu var ki biz x i kullanmadık ve print() işlemini

yaptırdık sadece.







Resim108 - range()




Az önce "Kısaca 1 den yüze kadar say dedik o da saydı." demiştim. Bakın 5 dahil değil. Çünkü 100 e kadar diyoruz.

100 dahil değil. Bu sefer birgeçicideğişken olan x i kullandık.







Resim109 - Eşleştirme




Bakın bu resimde "Atmaca" lakabı ile range() değerini birleştirip kullandık. %s %x bu ikisini sonra anlatacağım.







Resim110 - for birgeçicideğişken in çoğulveri:




Özellikle yukarı da da ona çoğulveri dedim. Dediğim gibi liste kullanılabiliyor. Sırayla listedeki her değişkene

işlem yapabiliriz bu sayede. çoğulveri kısmına string verince string i karakterlerine parçaladı..



for i in ...: çok işe yarayan bir döngüdür. Örneklere devam.







Resim111 - Karekökler




Bakın tüm verinin karekökünü bulduk. Tek çift olup olmadıklarını bulalım. Mantığı neydi? 2 ye bölünüp bölünememe.







Resim112 - Tek ve Çift




Bir sayı 2 ye bölündüğünde kalan 0 ise o sayı çift, değilse tektir.



if i % 2 == 0:



i geçici değerinin 2 ile bölümünden kalan 0 ise... % kalanı bulmaya yarar, bölümü değil.







Resim113 - Çoğul Parametre




Size demiştim aslında print() in içine birden fazla parametre alma olayı farklı diye. Şimdi onu bu resimde

görüyoruz. Fark ettiyseniz sayılar parametresinin önünde yıldız (*) var. Bu yıldız sayılar parametresine birden

fazla değer verilmesini sağlıyor. Verilen değerler demet şeklinde gelir. Demetlerin üzerinde de for ile

gezebiliriz.



Şimdi size bunu da öğrendik bir sorum daha var size. Çoğul sayıda parametre almayı da gördük ama buna verdiğimiz

her değeri sayılar parametresine yazdı bu. Peki biz bu fonksiyona bir özellik daha vermek istersek onu da

sayılara sayar bu. Onu nasıl yapabiliriz?







Resim114 - Demek İstediğim




Bakın demek istediğim buydu, basılacak a parametrelerimiz gitmiyor hepsi sayılara gidiyor. Bunu şöyle çözüyoruz.







Resim115 - Özellikle Belirtmek




Özellikle belirtmek gerekiyor onu. Aynı resimdeki gibi onun adı önce basılacak, sonra eşittir = ve en son

değeri. print() de bu şekilde işliyor. Onunda bu gibi görmediğimiz 4 gizli özelliği var. Ve bir kaç fonksiyon

içinde de var. Neden print() hata vermiyor derseniz o özellikler için daha önce de anlattığım varsayılan

parametre olayı var. Güzel değil mi?!!



Hadi kısır döngü yapalım. while yani Türkçesi ile "iken", çalışırken, devam ederken anlamında kullanılan

kodu kullanacağız.







Resim116 - while




while durum == 1:



bu kod durum 1 e eşit iken sürekli yap demek, iki nokta altına da yapılacakları yazıyoruz... Bakın benden input

bekliyor hala o öyle gider. Ama kısır döngüye girebilir o yüzden dikkat edelim while kullanırken. Mesela direkt

print() kullansaydık sonuç kötü olurdu, yazılım çökebilirdi.



Bu şekilde pek kullanılmaz bir komut ile durması sağlanır.







Resim117 - while Kırma




söz bir string. Stringlerde bir değişken bildiğiniz gibi. Sonradan tekrar söz eşittir yapınca güncellenebiliyor.

Bu şekilde onu güncelleyerek onu değiştirdik. Dediğimiz "Sustum." olunca döngü kırıldı. Yani bitti!


1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15-Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html
 
Moderatör tarafında düzenlendi:

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant
Cevap: Her Yaştan İnsan için Python (Basit, Net ve Örnekli.) - Modüller

rNHf4y.png


Modüller


Modüller bir programlama dilindeki yardımıcılarımızdır diyebiliriz. Onlar sayesinde işimiz çok kolaylaşır.
Modülleri ezberlemek zorunda değilsiniz, ihtiyacınız olunca dökümanı açıp bakabilirsiniz. Python da bir
programlama dili olarak modül zengini. 3.5 Sürümünde bir çok modül bünyesine dahil olmuş.

Modüller gerekiyorsa sonradan dahil edilir çünkü bu sayede yavaş ve büyük boyuta sahip olması engellenir
projenin.

Öncellikle kendi ufak modülümüzü oluşturacağız.



Resim118 - matematik.py


Şimdi 2 parametre alan bir fonksiyon oluşturduk. Bu fonksiyonun bulunduğu dosyanın ismi matematik.py. .py
Python ın uzantısı. matematik yerine farklı bir isim verilebilir.



Resim119 - matematik.py kullanımı


Bakın bu sefer import ettiğimiz modülün ismi matematik. Yani az önce oluşturduğumuz dosya. Ona ne isim verdiyseniz
import dedikten sonra o ismi girmek gerekiyor. İkinci komut ise az önce matematik.py da oluşturduğumuz fonksiyonu
çağırdık. Parametre olarak ben bu 2 sayıyı verdim.



Resim120 - Cevap


Cevap mavi olan yani 61. Zaten verdiğimiz parametrelerin sonucu o. Şunu unutmayın bizim modül dosyamız yani
oluşturduğum matematik.py ile modülü kullandım dosyam aynı klasörde olmalı.

Biz bu şekilde modül oluşturmuş olduk ama bunun dışında 2 modül tipi daha var. 1. si Python ile dahili olarak
gelen modüller. Mesela kullandığım "math" bir dahili modüldür. Birde diğer kullanıcıların ve kurumların
oluşturduğu modüller. Bunları yüklemek gerekiyor.



Resim121 - random


Şimdi burada bir dahili modül olan random var. Onun randint() fonksiyonunu kullandık. randint() içine 2 parametre
aldı, sınırlarını yani (minumum ve maksimum). randint() verilen sınırlar arasından rastgele bir sayı seçer.



Resim122 - random()


Random modülünün birde random() diye fonksiyonu var kendi içinde. Bu da 0 ve 1 arasında rastgele bu şekilde bir
sayı atıyor.

Modülleri farklı bir isim ile de kullanabiliriz. Bunun için aktarırken as yazarız ve sonuna ona vermek istediğimiz
ismi yazarız.



Resim123 - as


Az önceki resim ile kıyaslayabilirsiz.

Şimdi Python da dahili modül olan turtle yi kullanacağız.



Resim124 - turtle


Öncellikle turtle modülünü içeri aktardık. Sonra onun bir özelliği olan .Turtle() yi bir değişkene atadık.
Sonra .Turtle() nin bir özelliği olan .forward() ı kullandık. Aslında .Turtle() içinde birden fazla özellik
barındırıyor. O yüzden onu bir değişkene atamak gerekiyor. Sonra özellikleri kullanabiliyoruz. .forward() içine
bir parametre alıyor o da sayı. İlerle gibi bir anlama sahip. içine 50 verince 50 adım gitti ok :)

Sondaki input() program hemen kapanmasın diye. Biliyorsunuz tüm kodlar çalışınca ve işi bitince program
kapanır.



Resim125 - .forward()


Bu da o kodun çıktısı :)



Resim126 - Kare


Şimdi bir kare çizelim. Bu kareyi çizmek için for kullandık. range(4) bize 4 elemanlı bir liste verdi ve
kodumuzu 4 kere tekrar ettirdik bu sayede.

.forward(50) 50 adım ileri git demek, .right(90) 90 derece sağa dön demek. 4 kere tekrar ediyor.



Resim127 - Gif


Yukarı daki kodun çıktısı. Aslında bu kod çalışırken siz görmediniz ama ben her adımı adım adım gördüm.
Teker teker 50 birim gitti, sağa (aşağı) döndü ve bunu 4 kez tekrar edip varış noktasına vardı. Hoş.



Resim128 - .Screen()


Şimdi turtle.Turtle() değil, turtle.Screen() i kullanacağız. Bu komut bizim için bir pencere oluşturma fonksiyon
kümelenmesi yani bizim için bir penceredeki tüm fonksiyonlara sahip.

.setup() gördüğünüz gibi 2 parametre alıyor içine. Birincisi yatay, ikincisi dikey piksel sayısı.

.gbpic() arka plan ayarlamaya yarıyor. İçine bir parametre alıyor ve o parametre string içinde resim dosyasının
ismi ve dosya uzantısı oluyor. Şu var python dosyası ile resim dosyası aynı yerde olmalı.



Resim129 - Resim


Ben bu şekile bir uzay resmi buldum ve koydum. Gördüğünüz gibi kenarlarda boşluk var onun sebebi resim küçük.



Resim130


Şimdi bir tane roket ekledik ekrana. Onu eklemek için

a.addshape("roket.png")
turtle.shape("roket.png")

kullandık yani ekrana roket isminde bir resim ekle. Ardından turtle yani ekrandaki hareketli nesnemin resmine
bunu ayarla. Shape, İngilizcede şekil anlamına geliyor.



Resim131 - Görünümü


Görünüm bu şekilde oluyor..



Resim132 - Rokete yol


hareket_et ismindeki değişkene 10 hareket uzunluğu verdik. Diğer 4 fonksiyonumuz ise ileri,geri,sol ve sağa
gidişlerimizi halletmemiz için var.

Şimdi ise tuşlarımızı ayarlayalım, sonuçta yukarı fonksiyonumuz yukarı tuşuna basmadan çalışmamalı değil mi?



Resim133 - .onket ve .listen()


ekran.onkey(HANGİ FONKSİYONU ÇALIŞTIRALIM, HANGİ TUŞA BASILINCA ÇALIŞSIN) demek.

Biz de buna uygun olarak ileri fonksiyonu için Up yani yukarı tuşunu girdik.
Gönül oraya Up değil Yukarı yazmak isterdi fakat ne yazık ki klavye tuşlarının İngilizce
karşılıkları geçerli. Aynı şekilde 4 tuşu girip en sonda ekran.listen() diyoruz. Yani ekranı dinle.
Bu şekilde yeni bir tuşa basıldığında da roketimiz hareket edebiliyor.

Ve turtle bitti :) Dikkat ettiyseniz her modülün kendine has fonksiyonları var. O yüzden ilk modülü aktarmayı
unutmayın. Ve hepsini ezberlemenizi tasviye etmem. Çünkü unutuluyor bir yere kaydedin ihtiyacınız olunca
bakarsınız. Sadece Python ın kendine has fonksiyonlarını unutmayın...


1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15-Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html
 
Moderatör tarafında düzenlendi:

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant
Cevap: Her Yaştan İnsan için Python (Basit, Net ve Örnekli.) - Dosya İşlemleri

rNHf4y.png


Dosya İşlemleri


Programlarımız kapanınca bizim değişkenler gider. Ancak bazı programlarda sonucu kaybetmemek gerekiyor. Bunun
için Python da dosyalara müdahale edebiliyoruz. Mesela bu gitmesini istemediğimiz veriyi bir not belgesine
yazdırabiliriz.

Bir dosyaya erişmek için open() fonksiyonu kullanırız.
2 parametre ve bir tane de size daha önce anlattığım varsayılan fonksiyon özelliği var.

Şöyle kullanılır.

değişkenismimiz = open("Dosyaismi.txt","DosyaKipi", encoding="utf-8")

encoding="utf-8" kısmı varsayılan kısım olacak. Utf-8 ise bir dönüşüm biçimidir. Siz onu değiştirmetin yeterli :)



Resim134 - Dosya Kipleri


Dosya kipi dediğimiz olay bir dosya üzerinde yapabileceğimiz işlemi belirler. Bu resimde onlar var.

Hadi örnek yapalım!



Resim135 - open(), .write() ve .close()


open() ı öğrendik. "w" sıfırdan bir dosya oluşturmamızı sağlar. Her seferinde sıfırdan dosya oluşturur.
.write() ise dosya içine bir şey yazmamızı sağlar. İçine verdiğimizi dosya içine yazar. Unutmayın, sondaki
\n bir satır aşağı geçirir bizi.

Bir dosyayı açınca kaptmak gerekir unutmayın. Bunu da en sonda .close() ile yapıyoruz.



Resim136 - Dosyanın İçi


Bakın oldu!



Resim137 - Dosya Okuma


Bir dosyayı bu şekilde okuyabiliriz. open() da dosya kipini r olarak değiştirdik.
Sonra .read() metodunu kullanarak ekrana dosyanın içeriğini bastık.



Resim138


Bu şekilde.



Resim139 - .read()




Resim140 - .read() gösterim


.read() içine bir parametre verebiliriz. Bu varsayılan bir parametrenin yerine geçer. Bu içine vereceğimiz
parametre o indis e kadar olan kısmı almamızı sağlıyor. 0, 1 diye sayın, "biri" kelimesinin son i si 6. indisdir.

Şimdi ben dosyamın içine İstiklal Marşımızı ekledim.



Resim141 - .readline()


.readline() ile metinden sadece satırı okumuş oluyoruz. İlk satırını.



Resim142 - Çıktısı


Peki ya kullanıcıdan aldıklarımızı yazsak?



Resim143 - Aldığımızı Yazmak


Burada dikkat çekmem gereken kısım "w" kipidir. Dosya olsa bile onu sıfırdan oluşturacaktır. Az önce içine
yazdığım İstiklal Marşı silindi.



Resim144 - Dosya


Şimdi bir dosya her seferinde böyle sıfırdan oluşursa olmaz. Biz de bunun için "a" kipini kullanacağız.
"a" kipi eğer dosya yoksa o isimde bir dosya oluşturup yazmamızı sağlar eğer dosya varsa o dosyadan kalınan
yerden itibaren yazar.



Resim145 - "a" Kipi




Resim146


Bakın direkt sonuna ekledi.

Şimdi burada konuya ek bir modül işleyelim. Diyelim dosya ismini beğenmedik. Hadi onu değiştirelim...



Resim147 - os




Resim148 - .rename()


Os modülü yazım olarak bir kısaltmadır. Eğer İngilizce Türkçe yaparsak bizim için İşletim Sistemi demek oluyor.
Eğer Latince Türkçe yaparsak aklınızda bulunsun Kemik olacaktır. Kemik adamlara bu yüzden Osman denir. Man da
Latince adam demektir.

.rename() 2 parametre alıyor. os.rename("ÖNCEKİİSİM", "SONRAKİİSİM") şeklinde.

Dosyayı silelim...



Resim149 - Aynı Klasör İçindeki Dosyalar ve Klasörler




Resim150 - .remove()




Resim151 - Sayonara


Elveda eski dostum... .remove() içine bir parametre alıyor o parametre de sileceği dosyanın ismi. Acımasız
olabiliyor...

Dosyalara geri dönüyoruz...



Resim152 - İmleç




Resim153 - İmleç


Şimdi ilk resme bakın. Ne görüyorsunuz? Dosyanın içeriğini ekrana yazacak sonra ekrana bir kaç tane + koyacak
ve sonra tekrar dosyanın içeriğini ekrana basacak. Ama çıktıya bakarsanız son kısım yapılmamış? Neden?



Resim154 - İmleç




Resim155 - İmleç


Şimdi dosya açılınca imleç yani o uzun şey ( | buna benziyor ama hareketlidir.) dosyanın en başında bulunur.
İlk .read() komutumuz ile birlikte imleç dosyanın tüm içeriğini almak için dosyanın sonuna kadar gitti ve içerik
bitince print() ile ekrana bastık.

Ama bakın imleç şimdi dosyanın sonunda ve bizim ikinci .read() komutumuz çalışacak. İkinci komutta imleç zaten
dosyanın sonunda olduğu için bir yere gidemez ve boş döner. Bu durum nasıl mı engellenir?



Resim156 - .seek()




Resim157 - .seek() Çıktısı


.seek() imlecin yerini değiştirmemizi sağlıyor. İçine indis i parametre olarak alıyor. Biz 0 diyerek imleci
dosyanın en başına çekiyoruz. Ve bu sefer .read() tekrar dosyayı okuyabiliyor.

İmlecin nerede olduğunu da öğrenebiliriz?



Resim158 - .tell()




Resim159 - .tell() Çıktısı


.tell() ile imlecin yerini öğrenebiliyor. .read() den sonra dosyanın sonuna yani 34. indis e kadar gitmiş.



Resim160 - Ders Dosyam


Der dosyamda tam olarak şu an 58076 adet karakter varmış... Ben 100000 civarı düşünüyordum.

Son olarak dosyanın açık unutulması durumu için Python geliştiricileri şöylee bir yenilik yaptılar.

with open("Dosyaadı.txt","kipi",encoding="UTF-8") as dosya:
tab kod

Size bu kod ile geçici dosya değişkeni veriliyor. 3 nokta olan yere kodlarımızı yazıyoruz. Mesela
dosya.write() ve .read() gibi. 3 noktayı tab atılmasının gerekli olduğunu göstermek için oraya bıraktım.

Ek olarak, tab satırları bitince dosya kapanır. Ve artık alttaki kodlar çalışmaya başlar.


1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15-Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html
 
Moderatör tarafında düzenlendi:

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant
Cevap: Her Yaştan İnsan için Python (Basit, Net ve Örnekli.) - Tam Haliyle print()

rNHf4y.png


İleri Seviye print()




Resim164 - print()


Bakın kendi print() fonksiyonumuzu yazdık. Ya da print() in nasıl bir fonksiyon olduğunu görüyoruz. Öncellikle
print() gömülü bir fonksiyondur. Onu python dosyalarında benim tanımladığım gibi bulamayız ancak benim
tanımladığım gibi kullanılıyor.



Resim165 - sep=


Sep parametresinin varsayılan verisi boşluk " " tur. O yüzden Python yazdığınız kelimeler arasına boşluk koyuyor.
sep= i değiştirdim ve bakın, kelimler arasına benim yazdığım geldi.



Resim166 - end=


end= parametresinin varsayılan değeri \n yani bir alt satırdır. print() ekrana yazdırma işi bitince bir alt
satıra geçiyor otomatik olarak. Biz bunu boşluk yaptık ve 2. print() in içeriği boşluk ile 1. print() in
içeriğinin yanına geldi.



Resim167 - file=


Şimdi bunu kullanmak için sys adlı modülü aktardığımı gördünüz. Ancak modülün bir özelliğini kullanıyoruz. Biz
print() kullanınca bizim kodumuz hep yazabileceği yere yazı yazıyor. Ama illa oraya yazmak zorunda değiliz.
Bu file= o işe yarıyor. Varsayılan olarak sys.stdout ile bizim çalıştırdığımız yerin konsoluna yazır. Hadi bunu
değiştirelim. Örnek olarak bir metin dosyası.



Resim168 - Farklı Konum


Bakın bu şekilde metin belgesinin içine yazabilir olduk print() ile. Artık print() ile her seferinde böyle
belirterek belgenin içine yazı yazabiliriz.

Şunu belirteyim bizim tüm Python komutları bitmeden bu şekilde yazı yazıyorsak hemen yazılmaz. Tüm komutlar
bitince yazılır ama program bir komutta çökerse yazı yazılmamış olur.



Resim169 - flush=


Az önce demiştim hemen yazılmaz bitmesi beklenir diye. Bu flush= ile bunu hemen yapabiliriz. Varsayılan olarak
False tur. True yapalım.

Diğer dediğimi de halledelim yani her seferinde belirtme işini. Bunu nasıl engelleriz yani bir kere belirtelim
sonra hep o olsun diyorsanız,



Resim170 - sys.stdout




Resim171 - sys.stdout


Hatırlıyorsanız en başta pprint() isminde size print() fonksiyonunu Python ile oluştursaydık kısmını göstermiştim.
Sadece ekrana basma komutu olarak yine print() kullanmıştık :D

file= kısmı varsayılan olarak file=sys.stdout tur. Bizde sys.stdout u değiştirerek her seferinde ayrıca
belirtmekten kurtulduk.



Resim172 - Çıktısı


1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15-Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html
 
Moderatör tarafında düzenlendi:

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant
Cevap: Her Yaştan İnsan için Python (Basit, Net ve Örnekli.) - Hatalar ve İstisnalar

rNHf4y.png


Hatalar ve İstisnalar


Şimdi biliyorsunuz hatalı komutta falan hata alıyoruz. Ancak bu hatayı alınca program direkt kökten gidiyor.
Yani ne olduğunu anlayamıyoruz. Programlama da bug, hata ve istisna çoğu sefer yanlış ve birbirinin yerine
kullanılır. Görelim.



Resim173 - try ve except


sys modülünü aktarmadığımız için hata aldık ilk kodda. İkincisinde try sayesinde program bize hatayı verdi.

try: bir komutu denemek demek. Program bu komutu çalıştırmayı dener. except: ise bu komutun verebileceği hatalara
karşı cevap verebilmemizi sağlar. Yazdığım komutu denedi, modül hatası verdi ve bu hatayı ekrana bastı.

except: ler özelleştirilebilir.

Hatalı except Kullanımı



Resim174


Bakın print() i yanlış yazdık ama except tüm hatalarda aynı şeyi basacağı için bu şekilde yaptı. Hadi
özelleştirelim.



Resim175




Resim176


Bakın tüm hataları yakaladım. expcept Hataadı: şeklinde hatalara göre verilen mesaj değiştirilebilir.

Bazı hatalar,

ModuleNotFoundError: Modül bulunmadı.
NameError: Bu şekilde isimli bir değişken / fonksiyon o tip bir şey yok.
FileNotFoundError: Bu isimde bir dosya yok.
SyntaxError: Kod yazılırken parantez, ikinokta veya tab gibi bir şey unutulmuş.
ZeroDivisionError: Bir sayı 0 a bölünemez, denenirse bunu dönüyor.
TypeError: Tip hatası. Mesela "8" // 3 derseniz olur. int() ile çözersiniz.



Resim177 - raise


raise ile hata fırlatabilirsiniz. En azından böyle deniliyor. raise Hatadı( Hata açıklaması)
Bu çok kullanılır mı bilemem.

try ve except işinizi görecektir genel olarak.

Dersler Bitti.


1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15-Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html
 
Moderatör tarafında düzenlendi:

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant
Cevap: Her Yaştan İnsan için Python (Basit, Net ve Örnekli.) - 2 Örnek Proje

rNHf4y.png


2 Örnek Proje


Artık öğrenme işimiz bitiyor. Tamam ben artık Python biliyorum deyip oturmak bize yakışmaz.
Hadi örnekler yapın, yapalım bu böyle olmaz ki :)
Ben bir kaç örnek bırakıyorum sizlere....

Sayı Tahmin




Resim161 - Sayı Tahmin Oyunu




Resim162 - Oyunu oynadım ve kazandım...


Kullandığım break komutu sonsuz bir döngü olduğu zaman onu bitirmeye yarıyor. Döngüden çıkar ve döngü sonrasında
komut varsa onu çalıştırır.

Komutların yanına açıklama girmek için # kullanır. # bundan sonra gelen her yazı açıklamadır hatayı engeller.

Bu oyuna hak eklemeyi deneyin. 10 Hak olsun ve her yanlış tahminde -= yapın. Kaç canı kaldığını bastırmayı
unutmayın...

Kodları: Ubuntu Pastebin

Mağaza Fişi Oluşturma




Resim163




Resim178


Bu projeyi de geliştirebilirsiniz. Örneğin ben boşluk koymayı unuttum. Ne boşluğu derseniz fiş bilgileri
arasında boşluk yok. Kendim atmam gerekti gibi.

Kodları: Ubuntu Pastebin


1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15-Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html
 
Moderatör tarafında düzenlendi:

ZuL-RaA

Kadim Üye
9 Ara 2017
5,564
838
Semerkant
Konu bitmiştir....................


1- Python Hakkında ve Genel Özellikler - https://www.turkhackteam.org/9273898-post1.html
2- Basitçe Veri Tipleri ve Alıştırmalar - https://www.turkhackteam.org/9273900-post2.html
3- Matematik - https://www.turkhackteam.org/9273901-post3.html
4- Stringler (Karakter Dizileri) - https://www.turkhackteam.org/9273902-post4.html
5- Listeler - https://www.turkhackteam.org/9273905-post5.html
6- Demetler - https://www.turkhackteam.org/9273907-post6.html
7- Sözlükler - https://www.turkhackteam.org/9273908-post7.html
8- Fonksiyonlar - https://www.turkhackteam.org/9273910-post8.html
9- Operatörler - https://www.turkhackteam.org/9273912-post9.html
10- Koşullu Durumlar - https://www.turkhackteam.org/9273913-post10.html
11- Döngüler - https://www.turkhackteam.org/9273917-post11.html
12- Modüller - https://www.turkhackteam.org/9273919-post12.html
13- Dosya İşlemleri - https://www.turkhackteam.org/9273921-post13.html
14- Tam Haliyle print() - https://www.turkhackteam.org/9273921-post14.html
15-Hatalar ve İstisnalar - https://www.turkhackteam.org/9273923-post15.html
16- 2 Örnek Proje - https://www.turkhackteam.org/9273924-post16.html



Konu İçeriğini İndirme (Sadece Yazı - Yazı ve Resim Linkleri - Resimler)


Kelime Sayısı: 8148 Kelime

Karakter Sayısı: 55893 Karakter

Resim Sayısı: 178 Resim


İndir

Virüstotal


 
Moderatör tarafında düzenlendi:

'PedroDavis

Kıdemli Üye
24 Haz 2015
2,336
190
112
Baştan sona keyifle okuyup inceledim görselleri.
Harika anlatmışsınız elinize sağlık hocam.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.