10 Eylül 2017 Pazar

100 Adımda Python Programlama Kısım 3

PYTHON


51) Peki değişken atarken yanlışlıkla yukarıdaki yasak kelimelerden birini kullanırsak ne yapmamız gerekir? Bunun için komut penceresini yani etkileşimli kabuğu kapatıp açabilirsiniz, ya da aşağıdaki komutu kullanabilirsiniz. Örnek olarak len komutuna değişken atayalım ve sonra bu yanlıştan dönelim.

>>> len=5                        // 5 değerini len değişkenine atadık. (yapmamalıydık)
>>> len("elma")             // elma stringinin uzunluğunu ölçmeye kalktık ama hata aldık

Traceback (most recent call last):   
File "", line 1, in     
type("elma") 
TypeError: 'int' object is not callable

Şimdi bu hatadan dönüyoruz:

>>> del len                                                                   //işte bu kadar basit 
>>> len(“elma”)                                                          //her şey normale döndü. 
4

52) Bu arada değişken adlarında asla boşluk olmaz. Örnek;

>>>kullanıcı adı = “admin”              // yanlış
>>>kullanıcı_adı = “admin”             // doğru 


53) Bir sayının kuvvetini bulmak için aşağıdaki kodu yazın.

>>> 5**3                       //5’in 3. Kuvvetini hesaplayan kod, iki çarpı işareti yan yana                        125 

>>> pow(5,3)              //Diğer bir alternatif pow komutunu kullanmak
125 

54) Bir sayının karekökünü bulmak için aşağıdaki kodu yazın.

>>> 144**0.5                //Bir sayının 0.5. kuvveti o sayının kareköküdür  
12

55) Aşağıdaki kodun anlamı şudur. 11 sayısının 3. kuvveti olan 1331 sayısı 4‘e bölündüğünde kalan sayı 3’tür.

>>> pow(11,3,4) 3 

56) Bir değere iki veya daha fazla değişken atayabilirsiniz. Örnek;

>>> a=b=4                                     //hem a hem de b değişkenine 4 değerini atadık.                          >>> a+5
 9 
>>> b+5
 9 

57) Python’da değişken takası gerçekleştirebiliriz. Bir örnekle gösterelim. Bir şirkette Onur isimli kişi ürün müdürü olsun, Murat isimli kişi de insan kaynakları müdürü olsun.

>>> onur="ürün_müdürü"
>>> murat="insan_kaynakları_müdürü" 

Fakat daha sonra bu kişilerin unvanları kendi aralarında değiştiğinde bu işlemi çok basit bir kodla halledebilirsiniz.

>>> onur,murat=murat,onur                 //işte bu kadar basit 
>>> onur                                                    //onur bundan sonra insan kaynakları müdürü 'insan_kaynakları_müdürü'                             
>>> murat                                                 //murat bundan sonra ürün müdürü 
'ürün_müdürü'        
               
58) _  (alt çizgi işareti), yapılan son işlemin veya girilen son öğenin değerini tutma işlevi görür.

>>> 10+5                           // Son işlem olan 15 değerini hafızada tutup bize gösterdi            
15
 >>> _                                                          
15                         // O halde altçizgi ile 5’i topladığımızda sonucun 20 olması kaçınılmaz        
 >>> _+5                                      
 20                                      // Bundan sonra _ (yani son öğe) 15 değil 20 olmuştur  

59) print() fonksiyonu ekrana çıktı vermemizi sağlar. Örnek;

 >>> print("Merhaba Dünya") 
Merhaba Dünya                                       // İyi ama print fonksiyonu olmadan da çıktı alamıyor 

muyduk dediğinizi duyar gibiyim.     
      
>>> "Merhaba Dünya"         
'Merhaba Dünya' 

Bu kodlar da aynı işi görmez mi? Cevap, hayır. Fark ettiyseniz alttaki Merhaba Dünya tek tırnak içine alınmış. Yani aslında bir çıktı değil.  İlerde programlarımızı dosyalara kaydedip çalıştırdığımızda, başında print() olmayan ifadelerin çıktıda görünmediğine şahit olacaksınız. Orijinal ekran çıktısı print() fonksiyonu ile gerçekleşir.

60) print() fonksiyonunda çift tırnak kullanmak şart değildir. Yani Merhaba Dünya ifadesini hem çift tırnak hem tek tırnak hem de üç tırnak içerisine alabiliriz. Örnek;

 >>> print("Merhaba Dünya")                                                       // çift tırnak            
Merhaba Dünya 
>>> print('Merhaba Dünya')                                                       // tek tırnak            
 Merhaba Dünya 
>>> print('''Merhaba Dünya''')                                                     // üç tırnak          
 Merhaba Dünya 

Görüldüğü üzere hepsini kullanabiliriz. Ancak Python’da karakter dizisi tanımlarken genellikle tek tırnak ve çift tırnak kullanıldığını unutmayın. O halde üç tırnak neden var sorusuna ise daha sonra yanıt verelim.
61) print() fonksiyonunda neden üç tırnak kullanmamız gerektiğini bir örnek üzerinde gösterelim. Diyelim ki aşağıdaki gibi bir çıktı almak istiyoruz.

              >>> print("""Python programlama dili Guido Van Rossum                      adlı Hollandalı bir programcı tarafından 90’lı                      yılların başında geliştirilmeye başlanmıştır. Çoğu                      insan, isminin "Python" olmasına bakarak, bu programlama                     dilinin, adını piton yılanından aldığını düşünür.                     Ancak zannedildiğinin aksine bu programlama dilinin                     adı piton yılanından gelmez.""") 

Böyle bir çıktı alabilmek için tek veya çift tırnak kullanmaya kalkışırsanız epey eziyet  çekersiniz. Bu tür bir çıktı vermenin en kolay yolu üç tırnakları kullanmaktır. Çünkü üç tırnaklı yapı öteki tırnak tiplerine göre biraz farklı davranır. Örnek;

 >>> print('''Game Over             
Insert Coin!''')             
Game Over            
 Insert Coin! 

Yukarıdaki kodların anlamı şu: Ben print komutunu ve üç tırnak işaretini kullanarak Game Over yazdım sonra enter tuşuna bastım, normalde tek tırnak veya çift tırnak kullansaydım enter tuşuna bastıktan sonra program hata verecekti ancak üç tırnak kullandığım için hata vermedi. Bunun anlamı yazmaya devam et demektir. Böylelikle çıktının devamı olan İnsert Coin! ifadesini yazdım ve üç tırnak ve parantez ile fonksiyonumu tamamladım. Tekrar enter tuşuna bastığımda ise üst üste satırlardan oluşan çıktımı elde ettim.

62) Bu arada üç tırnak ‘’’ ya da “”” şeklinde olabilir. İkisi de aynı işlevi görür.

63) Peki, neden bazen tek tırnak bazen de çift tırnak kullanmamız gerekiyor? Bunu bir örnekle gösterelim. Diyelim ki aşağıdaki gibi bir çıktı almak istiyoruz.

              İstanbul'un 5 günlük hava durumu tahmini

Dikkat ederseniz yukarıdaki ifadede bir kesme işareti var. Yani tek tırnak. O halde kritik  soru şu. İçinde tek tırnak işareti olan bir string’i tek tırnak içine almak mantıklı mı? Tabii ki değil çünkü programımız hata verecektir. Bu yüzden diğer bir alternatif olan çift tırnağı kullanmalıyız.

>>> print("İstanbul'un 5 günlük hava durumu tahmini")            
 İstanbul'un 5 günlük hava durumu tahmini 


64) print() fonksiyonu birden fazla parametre alabilir. Örnek:

>>> print ('Fırat' , 'Dicle')                               //virgül kullanarak iki ayrı string’i birleştirdik.          Fırat Dicle 

65) sep() fonksiyonunun ne anlama geldiğini öğrenelim. sep ifadesi, İngilizcede separator (ayırıcı, ayraç) kelimesinin kısaltmasıdır. Örnek:

 >>> print("http://", "www.", "google.", "com")             
http:// www. google. com 

// Yukarıdaki örnekte virgül işareti ile stringleri birleştirirken birer boşluk bırakıldığını fark etmişsinizdir. Ancak boşluk bırakılmasını her zaman istemeyiz. Yukarıdaki linkte boşluk olmaması gerekir. Yani bizim hedefimiz http://www.google.com yazdırmak. Bildiniz gibi linklerin boşluklu hali hiçbir işe yaramaz. İşte burada sep() fonksiyonu devreye girer. Aslında yukarıdaki kod şu şekildedir:

             >>> print("http://", "www.", "google.", "com", sep=" ") 

// Ancak buradaki sep=” “ ifadesi görünmezdir yani onu normalde kullanmayız o ancak arka planda çalışır ve default olarak virgüllerden sonra boşluk bırakır, ta ki amacımız değişene kadar. Çift tırnak işaretinin arasına boşluk değil de başka bir karakter koyarsak bu sefer virgüllerden sonra boşluk değil bu koyduğumuz karakter olacaktır. O halde çift tırnak arasına bir şey koymazsak virgüllerden sonra hiçbir boşluk olmayacaktır. Doğru kodumuzu yazalım.

>>> print("http://", "www.", "google.", "com", sep="")            //Bir boşluk nelere kadir 
   http://www.google.com 

66) sep=” “ ile sep=None  aynı anlama gelir.
 
67) bir mumdur iki mumdur üç mumdur dört mumdur… türküsünü sep ve print fonksiyonu kullanarak ekrana yazdıralım.

  >>>print("bir", "iki", "üç", "dört", "on dört", sep=" mumdur ")          
 
bir mumdur iki mumdur üç mumdur dört mumdur on dört 

             //virgüller arasına boşluk, mumdur ve tekrar boşluk koyduk. Yani sep=" mumdur " 

68)  print() fonksiyonunun end adlı özel bir parametresi daha bulunur. Tıpkı sep parametresi gibi, end parametresi de print() fonksiyonunda görünmese bile her zaman oradadır. sep parametresi print() fonksiyonuna verilen parametreler birleştirilirken araya hangi karakterin gireceğini belirliyordu. end parametresi ise bu parametrelerin sonuna neyin geleceğini belirler. Bunu bazı örneklerle açıklayalım.

             >>> print("Bilgisayar\nBilimi") 

            Bilgisayar 

            Bilimi 

\n parametresini far etmişsinizdir. Bu parametreye newline adı verilir. Görevi de yukarıda görüleceği gibi satırbaşı yaparak stringleri ayırmaktır. Örnek:


>>> print("Bugün günlerden Salı") 
Bugün günlerden Salı 

//Burada herhangi bir end parametresi göremiyoruz. Ancak Python yukarıdaki kodu aslında şöyle algılar: 

>>> print("Bugün günlerden Salı", end="\n") 

//Kısacası bu kodu yazdığımızda ve enter tuşuna bastığımızda print() fonksiyonu iki farklı işlem gerçekleştirir: 

1-Öncelikle karakter dizisini ekrana yazdırır. 
2-Ardından bir alt satıra geçip bize >>> işaretini gösterir. 

//Bunun ne demek olduğunu anlamak için end parametresinin değerini değiştirmemiz yeterli olacaktır: 

>>> print("Bugün günlerden Salı", end=".") 
Bugün günlerden Salı. 

// end fonksiyonu ile stringin sonuna bir nokta koymuş olduk. Aslında mesele bu kadar basit.


69) sys.stdout nedir? sys.stdout ‘standart çıktı konumu’ anlamına gelir. Standart çıktı konumu; bir programın, ürettiği çıktıları verdiği yerdir. Python öntanımlı olarak, ürettiği çıktıları ekrana verir. Eğer o anda etkileşimli kabukta çalışıyorsanız, Python ürettiği çıktıları etkileşimli kabuk üzerinde gösterir. Dolayısıyla Python’ın standart çıktı konumu etkileşimli kabuk veya komut satırıdır. Yani print() fonksiyonu yardımıyla bastığınız çıktılar etkileşimli kabukta ya da komut satırında görünecektir. Ama eğer istersek print() fonksiyonunun, çıktılarını ekrana değil, bir dosyaya yazdırmasını da sağlayabiliriz. Bunu daha sonraki örneklerle gösterelim.

70) print() fonksiyonu ile elde edilen çıktıları ekrana değil de bir dosyaya nasıl yazdırırız?

>>> dosya = open("deneme.txt", "w") 
>>> print("Bilgisayar Bilimi, Python”,file=dosya)
 >>> dosya.close() 

Gelin yukarıdaki kodları açıklayalım. Öncelikle deneme.txt adlı bir dosya oluşturduk ve bunu dosya adlı bir değişkene atadık. Burada kullandığımız open() fonksiyonuna çok takılmayın. Biz şimdilik bu şekilde dosya oluşturulduğunu bilelim yeter. Gördüğünüz gibi open() fonksiyonu da birtakım parametreler alabiliyor. Bu fonksiyonun ilk parametresi “deneme.txt” adlı bir karakter dizisi. İşte bu karakter dizisi bizim oluşturmak istediğimiz dosyanın adını gösteriyor. İkinci parametre ise “w” adlı başka bir karakter dizisi. Bu da deneme.txt dosyasının yazma kipinde (modunda) açılacağını gösteriyor. Oluşturduğumuz bu deneme.txt adlı dosya, o anda bulunduğunuz dizin içinde oluşacaktır. Bu dizinin hangisi olduğunu öğrenmek için şu komutları yazın:

>>> import os 
>>> os.getcwd() 
'C:\\Users\\Kullaciadi\\AppData\\Local\\Programs\\Python\\Python36' 

Dizine baktığınızda deneme.txt adlı bir dosya oluştuğunu göreceksiniz. Dosyayı açtığınızda Bilgisayar Bilimi, Python çıktısının yazılı olduğuna şahit olacaksınız.  Eğer dizin görünmüyorsa gizli olabilir bu durumda gizli dosyaları göster deyin.

Yukarıdaki kodu açıklamaya devam edelim.  Gördüğünüz üzere ikinci satırda  print() fonksiyonuna rağmen ekranda çıktı görünmedi. Çünkü print() fonksiyonunu ekrana değil dosyaya çıktı verecek şekilde ayarladık. Bu işlemi file adlı bir parametreye, dosya değişkenini atayarak yaptık. Son komut yardımıyla da, yaptığımız değişikliklerin dosyada görünebilmesi için ilk başta açtığımız dosyayı kapattık.

71) Tıpkı sep ve end parametreleri gibi, file parametresi de, siz görmeseniz bile her zaman print() fonksiyonunun içinde yer alır. Yani diyelim ki şöyle bir komut verdik:

>>>print("Tahir olmak da ayıp değil", "Zühre olmak da") 

Python aslında bu komutu şöyle algılar:

>>> print("Tahir olmak da ayıp değil", "Zühre olmak da", sep=" ", end="\n", file=sys.stdout) 

Yani parametrelerin arasına birer boşluk koyar (sep=" "), sonuna satır başı karakteri ekler         (end="\n") ve bu çıktıyı standart çıktı konumuna gönderir (file=sys.stdout).

72) flush() fonksiyonunu aşağıdaki örnekle açıklayalım.

>>> f=open("kisisel_bilgiler.txt","w") 
>>> print("Murat Yılmaz", file=f) 
>>> print("T.C. no: 56897136119", file=f) 
>>> print("Doğum yeri: Trabzon", file=f) 
>>> f.close() 

Yukarıdaki kodları daha önce öğrenmiştik. kisisel_bilgiler adlı bir txt dosyası oluşturduk. Ardından bu dosyaya sırasıyla yukarıda yazılı olan çıktıları gönderdik. Son olarak bu dosyayı kapatarak işlemi sonlandırdık. Ancak bu son dosyayı kapatma işlemi olmadan yukarıdaki çıktıları almamız mümkün. İşte flush() fonksiyonu burada devreye giriyor. O halde flush() fonksiyonunu kullanarak yeniden kodları yazalım.

>>> f=open("kisisel_bilgiler.txt","w") 
>>> print("Murat Yılmaz", file=f, flush=True) 
>>> print("T.C. no: 56897136119", file=f, flush=True) 
>>> print("Doğum yeri: Trabzon", file=f, flush=True) 

Burada yaptığımız şey sadece print() fonksiyonunun içine flush=True değerini koymak. flush() fonksiyonunun sadece iki değeri vardır. True or False.  flush() değeri default olarak False ayarlandığı için yapmak istediğimiz işlem için True değerini kendimiz vermek zorunda kaldık. Artık kodun sonuna f.close() koymak zorunda değiliz.

73) *(yıldız) parametresini anlatmak için bir soru soralım. Aşağıdaki gibi bir çıktı almak istersek nasıl bir kod yazmamız gerekir?

L.i.n.u.x 

Aslında cevabı daha önce öğrenmiştik.

>>>print("L", "i", "n", "u", "x", sep=".") 
L.i.n.u.x 

Ancak bunun daha basit bir yolu var.

>>>print(*"Linux", sep=".")  
L.i.n.u.x 

Bu örneklerden de gördüğünüz gibi * işaretini kullanarak Linux stringini parçalara böldük ve bu parçaların arasına sep() fonksiyonunu kullanarak nokta koyduk. Bu kadar basit.

74) sys.stdout modülünü (standart çıktı konumu) kalıcı olarak değiştirmek için aşağıdaki kodu yazalım.

>>> import sys                                     
>>> f =open("ödevler.txt", "w") 
>>> sys.stdout=f 
>>> print("İstanbul'un Fethi Slaytı", flush=True) 

Yukarıdaki kodu açıklayalım. İlk önce import sys komutu vererek sys modülünü içe aktardık. import sys önemli çünkü bu komutu vermezseniz bundan sonra sys ile ilgili yazacağınız hiçbir kod çalışmayacaktır. Bunu modüller konusu işlenirken daha iyi anlayacağız. Daha sonra ödevler.txt adlı bir dosyayı “w” komutunu da kullanarak yazma kipinde oluşturduk ve bunu f değişkenine atadık. Asıl can alıcı kodu ise sys.stdout=f ile oluşturduk çünkü kalıcı dosyayı f değişkenine atayarak bundan sonra yazacağımız her şeyi ama her şeyi ödevler.txt dosyasına aktarma emri verdik. Son satırda ise basit bir print() emri vererek ödevler.txt dosyasına “İstanbul’un Fethi Slaytı” yazısını yazdırmış olduk.  Haliyle dosyayı kapatmaya ihtiyacı duymadık çünkü hemen akabinde flush=True değerini oluşturduk.

75) Peki standart çıktı konumunu, etkileşimli kabuktan çıkmadan veya programı kapatmadan eski haline döndürmenin bir yolu var mı? Elbette var. Yukarıdaki koda aşağıdaki kodu ekleyelim.

             f, sys.stdout = sys.stdout, f                      
                
             İşte bu kadar basit. Yaptığımız şey değişken takasından başka bir şey değil. 

KAYNAK:

100 Adımda Python Programlama Kısım 2

PYTHON

26) Python’u normal çalıştırıp editör ortamında veya daha önce değinildiği gibi komut istemiyle ulaştığımız MS-DOS ortamında kullanabiliriz. Bu ortamlara teknik olarak etkileşimli kabuk adı verilir.

27) Python Çalışma Ortamları









28) Etkileşimli kabuk dediğimiz komut ortamında >>> işareti Python’da komut yazmaya hazır olunduğu anlamına gelir.

29) Python’a yeni başlayanların en sık yaptığı hatalardan biri >>> işareti ile komut arasında boşluk bırakmalarıdır. Eğer bırakırsanız kod hata verecektir.

30) Hazır Python’a başlamışken programlama kavramlarını hatırlatmakta fayda var. Örneğin string kavramı karakter dizisi anlamına gelir. Yani bir veya daha fazla karakterden oluşan diziler anlamına gelir. Bunu Python’da örnekleyelim;

>>> “Merhaba Dünya”  
 ‘Merhaba Dünya’             //ekran çıktısının tek tırnak içinde olduğuna dikkat edin. 

Burada çift tırnak içinde gösterilen ifade string’dir. Çift tırnak önemlidir, çünkü çift tırnak kullanılmazsa program hata verecektir.

31) type() komutu ile verilerin tipini sorgulayabiliriz. Yukarıdaki örneği baz alalım;

>>> type("Merhaba Dünya")
                                               //“Merhaba Dünya” adlı veri bir string’tir. 

32) Karakter dizilerini birleştirmek için aşağıdaki kodu yazmak yeterlidir. Örnek olarak bilgi ve sayar dizilerini birleştirip ekrana bilgisayar yazdırmak istiyorum.

>>> "bilgi"+"sayar"
 'bilgisayar'                                               //+ işaretini kullanarak dizileri birleştirdik. 

33) Karakter dizilerini birleştirirken boşlukları da kullanmamız gerekebilir. Örneğin Bilgisayar ve Bilimi dizilerini aralarında boşluk bırakarak birleştirelim.

>>> "Bilgisayar"+" "+"Bilimi" //ortadaki çift tırnağın içinde bir boşluk bırakıldığına dikkat edin.
'Bilgisayar Bilimi'

34) Karakter dizilerini birleştirirken + işaretini kullanmak zorunda değiliz. Yine yukarıdaki örneği baz alalım.

>>> "Bilgisayar" " " "Bilimi"        
    'Bilgisayar Bilimi'

//+ yerine hiçbir şey yazmasak ta olur, hatta boşluk bile bırakmak zorunda değiliz. 


35) * (çarpı) işareti Python’da nasıl bir etki yapar bunu bir örnekle gösterelim.

>>> "w" * 3              
    'www'                                             //w stringini üç defa tekrarlayarak ekrana yazdırdı

36) - (eksi) ve / (bölü) işlemlerini karakter dizileri ile birlikte kullanamayız.

37) Programlama kavramlarını öğrenmeye devam edelim. Örneğin integer tam sayı demektir. Yani 96 veya 245 gibi küsuratlı olmayan veriler tamsayıdır.

38) Python’da 8.3 veya 24.18 gibi küsuratlı sayılar kayan noktalı sayılar (floating point number) dediğimiz veri türü sınıfına girer. Ancak burada virgül yerine nokta kullanmamız gerekir.

39) 10+2j gibi bir ifade ise karmaşık sayılar (complex) dediğimiz veri türünü oluşturur.

40) Python’u basit bir hesap makinesi gibi kullanabiliriz. Örnekler;

>>> 10+5 
15 

>>> 10*5
 50 

>>> 10/5
 2.0 

>>> 10-5 


41) 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 sayı değil string olacaktı. Bu durumda matematiksel işlemler yapılamayacaktı. Örnekler;

>>> 23+65
 88                           // Burada 23 ve 65 bir integer olduğu için matematiksel işlem gerçekleşti. 

>>> "23"+”65” 
'2365'                            // “23” ve “65” birer string’tir. Burada matematiksel işlem yapılamaz.                                                    
42) len() komutu ile parametrelerin uzunluğunu öğrenebiliriz. Bir örnekle açıklayalım.

>>> len("Bilgisayar Bilimi") 
17                                                        

 // “Bilgisayar Bilimi” stringinin uzunluğu 17 karakterdir. Burada boşluk karakterinin de sayıldığına dikkat edelim. 

43) len() komutu ile bir örnek daha yapalım.

>>> len("Bilgisayar Bilimi")+ len("Dersi") 
22 
             // “Bilgisayar Bilimi” stringi ile “Dersi” stringinin uzunluğu sayısal olarak toplandı.               Yani 17+5= 22 işlemi yapıldı. 

44) len() komutu çıktı olarak daima sayısal değer verir. Yani len() komutu ile bir integer veri türü elde etmiş oluruz.

45) Programlamada sıra geldi değişken kavramını öğrenmeye. Değişken matematikte öğrendiğimiz üzere bir değere atama yapmak demektir. Burada amaç, değerler yerine değişkenleri kullanarak daha sade, işlevsel ve zaman kazandırıcı işlemler yapmaktır. Örnek;

             >>> x=5                            // 5 değerini x değişkenine atadık.             
             >>> pi=3.14                     // 3.14 değerini pi değişkenine atadık.             
             >>> x+pi                          // Atadığımız değerleri değişkenler yardımıyla topladık.                                8.14                            // Sonucu çıktı olarak aldık

46) Değişken atarken bazı kurallara dikkat etmemiz gerekir. Örnekler;

5_kilo_elma = “10 tl”              // değişken adları bir sayı ile başlamaz.
  +x= 5                                          // değişken adları bir aritmetik işleçle başlamaz. 

47) Değişken adları içinde Türkçe karakterler kullanabilirsiniz. Ancak ileride beklenmedik uyum sorunları çıkması ihtimaline karşı değişken adlarında Türkçe karakter kullanmaktan kaçınmak isteyebilirsiniz.

48) Aşağıdaki kelimeleri değişken adı olarak kullanamayız.  

'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' 

49) Değişken adı için kullanmamanız gereken yasak kelimeleri Python komut satırında tekrar görmek isterseniz aşağıdaki komutları yazın.


>>> import keyword 
>>> keyword.kwlist 

['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'] 

// İşte yasak kelimeleri tekrar gördük. Bunlar özel anlam ifade eden kelimelerdir. Bu yüzden değişken adı olarak kullanılamaz. Kullanılırsa hata mesajı alırız. 

50) Yukarıdaki yasak kelimeleri öğrendiniz. Peki, kaç tane yasak kelime var? Tek tek saymak yerine daha önceden verilen len() komutunu kullanabiliriz.

>>> len(keyword.kwlist) 
33                              

 //keyword.kwlist komutuyla oluşturulan listede toplam 33 kelime var.  



KAYNAK:

100 Adımda Python Programlama Kısım 1

PYTHON  


1) Python, Guido Van Rossum adlı Hollandalı bir programcı tarafından 90’lı yılların başında geliştirilmeye başlanmıştır.

2) Adı “The Monty Python” adlı bir İngiliz komedi grubunun, “Monty Python’s Flying Circus” adlı gösterisinden esinlenerek konmuştur.

3) Python’ın baş geliştiricisi Guido Van Rossum 2005 ile 2012 yılları arasında Google’da çalışmıştır.

4) Dünya çapında büyük kuruluşlar (Google, YouTube ve Yahoo! gibi) bünyelerinde her zaman Python programcılarına ihtiyaç duyuyor.

5) Python programlama dilini öğrenirseniz, İnternet’te saatlerce ücretsiz PDF birleştirme programı aramak veya profesyonel yazılımlara onlarca dolar para vermek yerine, belgelerinizi birleştirip işinizi görecek programı kendiniz yazabilirsiniz.

6) Python’ı kullanarak masaüstü programlama, oyun programlama, taşınabilir cihaz programlama, web programlama ve ağ programlama gibi pek alanlarda çalışmalar yapabilirsiniz.

7) Python, C ve C++ gibi dillerin aksine derlenmeye ihtiyaç duymaz. Bu yüzden hızlı bir şekilde program geliştirilebilir.

8) Python’ın söz dizimi sade ve basittir. Bu nedenle program yazmak başka dillere kıyasla çok kolaydır.

9) Python kelimesi Türkçe  “paytın” şeklinde telaffuz edilir.

10) Python pek çok farklı işletim sistemi ve platform üzerinde çalışabilir. GNU/Linux, Windows, Mac OS X, MS-DOS, iOS ve Android gibi belki adını dahi duymadığınız pek çok ortamda Python uygulamaları geliştirebilirsiniz. Ayrıca herhangi bir ortamda yazdığınız bir Python programı, üzerinde hiçbir değişiklik yapılmadan veya ufak değişikliklerle başka ortamlarda da çalıştırılabilir.

11) 1990 yılından bu yana pek çok Python programı üretildiği için piyasada iki çeşit Python sürümü vardır.   Eğer bir Python sürümü 2 ile başlıyorsa (2.7.11 gibi) o sürüm Python 2.x serisine aittir. Şayet 3 ile başlıyorsa (3.6.2 gibi) o sürüm Python 3.x serisine aittir.  Python 3.x serisi son yıllarda yaygınlık kazanmaya başlamıştır.

12) Python3, Python2’ye göre hem çok daha güçlüdür, hem de hatalardan arındırılmıştır. Python3’teki büyük değişiklikten ötürü, Python2 ile yazılmış bir program Python3 altında çalışmayacaktır. Aynı durum bunun tersi için de geçerlidir. Yani Python3 ile yazdığınız bir program Python2 altında çalışmaz.

13) Piyasada Python2 ile yazılmış çok sayıda program olduğu için geliştiriciler uzun bir süre daha Python2’yi geliştirmeye devam edecektir.

14) Eğer Python programlama diline yeni başlıyorsanız Python3’ü öğrenmeniz daha doğru olacaktır. Ancak belirli bir proje üzerinde çalışıyorsanız, hangi sürümü öğrenmeniz gerektiği, projede kullanacağınız yardımcı modüllerin durumuna bağlıdır.

15) Şu anda piyasada bulunan bütün Python modülleri/programları henüz Python3’e aktarılmış değildir.

16) Eğer projenizde kullanmayı planladığınız yardımcı modüller hali hazırda Python3’e aktarılmışsa Python3’ü öğrenebilirsiniz. Ancak eğer bu modüllerin henüz Python3 sürümü çıkmamışsa Python2 ile devam etmeniz daha uygun olabilir.

17) Her halükarda Python3’ün bu dilin geleceği olduğunu ve günün birinde Python2’nin tamamen tedavülden kalkacağını da unutmayın.

18) Python’ı kurmak için http://www.python.org/downloads adresine gitmeliyiz.

19) Dowloads linkini tıkladığınızda ‘Download Python 3.6.2‘ ve ‘Download 2.7.13’ yazan yan yana iki düğme göreceksiniz. İlk düğme Python3, ikinci düğme ise Python2 sürümünü içerir.

20) Python’ı hangi dizine kurduğumuzu bilmek önemlidir. Zira karşılaşacağımız bazı sorunlar Python’ın kurulu olduğu dizine gitmemizi gerektirebilecek veya yazdığımız programlar için orada çeşitli işlemler yapma ihtiyacı duyabileceğiz.

21)  Windows kullanıcısı iseniz eğer siz farklı bir yere kaydetmemişseniz Python dosyaları genellikle C:\Users\Kullanıcıadı\AppData\Local\Programs\Python dizini içindedir.

22) Tüm kurulum işlemlerinden sonra Windows kullanıcıları öncellikle komut istemi ile MS-DOS komut satırına gidip ‘python’ komutunu verirse bu işlem ileride yapacağı çalışmalar açısından daha iyi olacaktır.

23) Asla unutmayın, kullandığınız işletim sisteminin komut satırı ile Python’ın komut satırı birbirinden farklıdır. Yani Windows’ta cmd, Ubuntu’da Ctrl+Alt+T ile ulaştığınız ortam sistem
komut satırı iken, bu ortamı açıp python (veya python3 ya da py3) komutu vererek ulaştığınız ortam Python’ın komut satırıdır. Sistem komut satırında sistem komutları (dir, pwr vbs...) Python komut satırında ise Python komutları çalışır.
24) Eğer bilgisayarınıza iki farklı Python sürümü yüklediyseniz bu iki sürümü ayrı ayrı kullanabilirsiniz. Bunun için bir sürümden diğerine geçme komutu vermeniz gerekir. Bu komutlar ‘py -2’ ve ‘py -3’ komutlarıdır.

25) Komut satırında py-2 komutu verirsek Pyhton’un 2.x versiyonuna geçiş yaparız, py-3 komutu ile de 3.x versiyonuna geçiş yaparız. Ancak daha fazla Python sürümleri varsa bu sefer alt sürüm numaralarını kullanırız. Örneğin py -2.6 komutu verdiğimizde Pyhton 2.6.x sürümüne geçiş yaparız.

26) Python’u normal çalıştırıp editör ortamında veya daha önce değinildiği gibi komut istemiyle ulaştığımız MS-DOS ortamında kullanabiliriz. Bu ortamlara teknik olarak etkileşimli kabuk adı verilir.

25 Ağustos 2017 Cuma

Python Ders I

Python Giriş I
Yazmaya Giriş J
Python programını yükledik. Başlat/ Ara menüsünden Python yazarak programı açıyoruz. Açtıktan sonra karşımıza söyle bir ekran geliyorsa programımız düzgün çalışıyordur.
Kodlarımızı artık bu ekranda yazmaya başlayacağız. Yazarken dikkat edeceğimiz kurallar var.
·         >>> bu satırdan sonra boşluk bırakmayacağız.
·         Yazacağımız şeyleri “(tırnak içinde) yazmalıyız.
·         Yazdığınız komutun çalışması için Enter tuşuna basıyoruz.
Örneğin bir yazı yazalım tırnak işareti olmadan verdiği hatayı görelim.

Şimdi doğru olarak kodumuzu yazalım. Tırnak içinde olmasına özen gösterelim. Ve Enter tuşuna basalım.

Her karakter dizisini tırnak işaretinin içine yazacağız. Her karakterin birleşimi için “+” işaretini kullanacağız.

Gördüğümüz gibi hiçbir boşluk olmadan yazımız birleşti. Boşluğu da bir karakter dizisi olarak tanımlayacağımız için boşluğu da şu şekilde belirtmemiz lazım

Bu şekilde yazdırma biçimleri mevcut.

+ işareti dışında karakter dizileri ile birlikte * (çarpı) işaretini de kullanabiliriz. O zaman şöyle bir etki elde ederiz:
Kaç kere yazılmasını istiyorsanız * işaretinden sonra o kadar yazın.

Bir örnekle kullanımını gösterelim.

 Esen Kalın!

24 Ağustos 2017 Perşembe

Python Programlama Dili

Python bir programlama dilidir. Peki neden Python öğrenmeye başladık bizim uzmanlık alanımız PHP değil miydi? :D Bilindiğini üzere Lisede bilgisayar öğretmenliği yapmaktayım. Bu sene Ortaöğretim müfredatı değişti. Her zaman alışık olduğumuz paket programlama(word,Excel,Access,power point) artık ortaokula indirilerek liselerde tekrar öğretilmeme kararı alındı. Bunun üzerine Algoritma, Kodlama ve Robotik eğitim konuldu müfredatlara. Geçen sene öğrencilerime Algoritma gösterdim. Ardından Arduino programlamaya giriş yaptık. 10.Sınıflarımla Arduino programlamaya ve Raspberry Pi programlarına devam edeceğiz. 9.Sınıflara ise değişen müfredat gereği Algoritmadan sonra Python programlama anlatacağız. Çok hakim olmadığımdan bu programlama dilini hem öğreneceğim hem anlatacağım.

Python programlama dilini (eğer programlama bilginiz varsa) oldukça basit bulacaksınız. Dersimin her aşamasını oradan yaptığım tüm örnekleri diğer bilgisayar öğretmenlerinin faydalanması için siteme koyacağım. Takipte Kalın!

Python Türkçe okunuşu ile Piton, İngilizce okunuşu ile Paytın olan bu dilin adı yılan türü olan pitondan gelmese gerek diyerek ufak bir araştırma yaptım. Guido Van Rossum bu programlama dilini, The Monty Python adlı bir İngiliz komedi grubunun, Monty Python’s Flying Circus adlı gösterisinden esinlenerek adlandırmış. Bu da böyle bilinsin. Ama biz yine de Yılanlı programlama dili olarak bilelim.

Python programlama dili ile masaüstü programlama, oyun programlama, web programlama ve Ağ programlama gibi birçok alanda ürünler geliştirebiliriz.

Python programlama dili farklı platform ve işletim sistemlerinde çalışabiliyor sınırlaması yok. Windows, Linux gibi çok kullanılan işletim sistemlerinde çalışıyorsa bizim için sıkıntı yok J

O zaman kullandığımız işletim sistemine uygun bir Python programı indirelim. Python3 ile çalışacağız. Müfredatımız bunu uygun görmüş. Hem daha yeni hem de 2deki hatalarından arındırılmış bir sürüm.

Bu adresten öncelikle programımızı indirelim.  http://www.python.org/downloads Kurulumu çok basit next next next :D Sizi yönlendiriyor.


Derslerimize başlayalım… Esen Kalın.

28 Şubat 2017 Salı

Merve'ye Mektuplar vol2 Doğum Günü Teması

Evet bugün özel bir gün benim için. Merve'nin benim taktığım lakabıyla sessiz gevezenin doğumunun 27.yılı. Söyleyince ne kadar da fazla Bugün doğması çok marjinal çünkü 28 şubat Leyleklerin gelme zamanı aynı zamanda (aha dayıya sor https://yandex.com.tr/yandsearch?text=28%20şubat%20leyleklerin%20gelme%20zamanı&lr=103870&clid=1882621)  Gelirken de boş gelmek istememişler Bu küçük kara kızı da yanlarında getirmişler.
 Evin en birincisi o olmuş

İlkokul, ortaokul, lise derken Merviş Ankara'nın yollarını tutmuş.. Tesadüf bu ya Tuçe'nin de yolu Ankara'ya düşmüş. Gel zaman git zaman Tahsin Baguoğlu Kız yurdu derken bir de bakmış Merve Nene Hatunda Hemde Tuçe'nin odasında ranzaların en dip köşe bucağında oturuyormuş. O gün o gözlerinde karalıkta anlamış bu kızın hayatında önemli bir yer edineceğini.  Ankara'nın onunla daha da güzelleşeceğini kim bilebilirdi ki. Yurda ekmek getiren bir Tuçe, konsere götürmesini söyleyen bir Merve :) Bir Anne edasıyla kız neymiş o öyle konser neyim oralar kötüdür şimdi otur oturduğun yerde der. Haklı mı? Şimdi düşünüyorum da haksız.. Keşke daha fazlasını yapsaydık. Öğrenciliğimizi bastıra bastıra yaşasaydık. Daha fazla tiyatroya, sinemaya, konsere, pikniğe gitseydik... Her şeyi oldukça fazla yapmışızdır öğrenci gibi yaşadığımız söylenemez. Adeta Çankaya'nın elit bir sokağında oturan evinde köpek besleyip kimsesiz çocuk haklarını savunan yaşlı teyzeler gibi parasızlık içinde bir zenginlik yaşadık. Pişman mıyız? ASLA! Hacı Bayram Veli Camine gidip az mı dua istemedik bir dilenci edasıyla. :) Ama bir daha yap deseler inan 100 kere aynısını yaparım. Çok özledim, çok özledik o günleri.. 2 çok güzel bir sayı demiştik ya bizim için o zaman sayı fazlaydı evet ama şimdi bakıyorum şansımız hala var.. 2 çok güzel sayı ve biz o sayıyla tüm bunları yeniden hiç yaşamamış gibi ilk defa yapıyormuşcasına yapabiliriz. (Anlatım bozukluğu yaptığım için sevgili eşimden öncelikle özür dilerim :) )

Tüm bunları bu hayatta yapabileceğin bir 2.sayın var. Hiç durma hepsini, her şeyi yap, Hayata bir kere geliyoruz deyip de bazı şeyleri özenle yap ilahi sevgin beşeri sevginden önce gelsin. Çok daha huzurlu ve mutlu olacağından şüphem yok. Günün öneminden oldukça uzaklaştım :) Yanında olsaydım da levent waffle'da special waffle yeseydik. EEE ne de olsa biz bahçeli çocuğuyuz kızımm :D İyi ki benim Mervişimsin. iyi ki iyi ki iyi kii...

ASLINDA 4 DAHA GÜZEL BİR SAYI AYNI RESMİ ROLLERİ DEĞİŞTİREREK İSTİYORUM.



Öne Çıkan Yayın

Hibernate Nedir?

Hibernate Nedir? Veritabanı işlemlerinde bize yardımcı olan, obje kavramından uzaklaşmadan işimize devam etmemizi sağlayan bir yapı. Artık...