Pazartesi, Aralık 8

Python Series - 1


Merhabalar, aslında başka bir dil anlatımı yapmayı düşünüyordum ama bu kadar güzel ve şeker tadında bir dil varken sizi başka bir dil ile tanıştırmayı istemedim. Blog üstünden "A'dan Z'ye" herşeyin olması için elimizden geleni yapıyoruz birde sıfırdan başlayan hevesi olan arkadaşlara kaynak olacak bir "python" serisi yapmak istedik umarım yardımcı olur.

Peki nedir bu "python" ? Bizim ne işimize yarar ? 

Sorularınızı duyuyor gibiyim aslında piheçpi gibi şükela ve alt yapısı bu kadar çok gelişmiş bir dil varken neden python diyebilirsiniz. O zaman piheçpiye göre avantajlarını ve olumlu yanlarını şöyle anlatalım;

Python dili hafif ve kolay kullanılabilirlik gösteren bir dildir. Linux ile dosttur, haz verir.

Linux sistemler üstünde eksiksiz ve harikuleyt şekilde çalışır
Sizi piheçpi'nin ";" anlayışından kurtaracak bir dildir dümdüz yazın gitsin, kuralcı değildir.
Package import bir komut kadar uzağınızda, şöyle ki;

Bir klasörü watch etmek istiyorsunuz ve bunun için bir paket lazım yapmanız gereken size lazım olanı araştırıp komut satırına adını "pypi" kullanarak;
pip install watchdog

 komutunu yazmanız işte paket yüklemesi bu kadar basit tabi piheçpiye göre kütüphane ve ihtiyaçları biraz daha fazla ama dediğim gibi öğrendikçe seveneceğiniz güzel bir dil. Paket yüklemelerinide sonraki derslerde elimden geldiğince göstermeye çalışacağım.


Hem PyQt gibi geliştirilesi güzel bir çok uygulamaylada bu uygulamayı pekiştirebilir ve rahat şekilde öğrenebilirsiniz. 

Peki "python" diline başlarken nerden ve nasıl başlamalıyız bu başlıklar ve konu altında elimden geldiği kadar python öğretisi ile sizlere birşeyler katmaya çalışacağım. Genel olarak yazılım diline hakim arkadaşların kısa sürede öğreneceği ve hepimizin bildiği "if,else" ifadelerinden yola çıkacağız ama dediğimiz gibi bazı noktalarda bazı gereksinimlere ihtiyaç duyabiliriz. 

Hem sayısal hem sözel ifadelerle elimden geldiği kadar anlamanız için çabalayacağım. Unutmadan "Buffer, Stack ve Heap overflow" gibi sistemlere hükmeden bugları bulduğumuzda yardımcılarımızdan biriside muhakkak "python" olacaktır.  Tabi ki bu tercihe göre değişir perl kullanmakta elinizde olan bir durum.

( Linux için python install: sudo apt-get install python yahut diğer bileşenlerle beraber kurmak isterseniz sonuna * ekleyerek tüm paketlere çektirebilirsiniz yahut sitesinden download ederekte yükleme gerçekleştirebilirsiniz)

Ve dersimize her zaman ki gibi yazılı diyagramlar üstünden başlayalım her programlama dilinde olduğu gibi python dilinde de ekranımıza küçük bir mesaj yazdırmak isteyelim.
Öncelikle terminalimize "python" komutunu giriyoruz bize açılan alana kısaca;
print "Merhaba Dünya"


Komutuyla ekranımızda Merhaba Dünya yazısını görmüş olacağız deminde söylediğim gibi dümdüz şeker tadında bir dil ";" işaretini piheçpi'de olduğu gibi python'da koymanıza gerek yok. Tabi ki biz bunu bir script dosyası haline getirip o şekilde de kullanabilirdik ki genellikle böyle bir kullanım yapacağız onun içinde şu şekilde ilerleyebiliriz;


#!/usr/bin/python

print "Merhaba Dünya"


Dosyamızı "test.py" olarak kaydettikten sonra,


python test.py

yahut

chmod +x test.py
./test.py

Bu komutlarlada çağırabiliriz. Unutmadan "ı,ş,ğ,ü" gibi karakterler hata verebilir bu yüzden başlangıç satırından hemen sonra aşağıda ki girişi kullanmanızda fayda var diye düşünüyorum. ;

# -*- coding: utf-8 -*-


Peki ya değişken tanımı nasıl olacak ? Onuda şu şekilde anlatalım öncelikle şunu belirteyim python dilinde bir değişken tanımlanırken "$, var" etc. gibi şeylere gerek yoktur direkt olarak değişken tanımı yapabilirsiniz şu şekilde örneklemeye çalışalım.




#!/usr/bin/python

a = 3
b = 4

print " Bu deger a degiskeni: ", a
print " Bu deger b degiskeni: ", b



Evet işte değişken tanımlamak ve satırlar içinde python'da değişken kullanmak bu kadar basit. Python dili bazı yerlerde farklı kütüphane ve tanımlara ihtiyaç duymaktadır piheçpiye oranla tek negatif yanı budur ama diğer taraftan bakacak olursak dümdüz ve kuralcı bir dil olmayışı ile gönlümüzü feth etmiş bir dil diyebiliriz. Kulak aşinası olduğumuz "raspberry pi" gibi küçük bilgisayar tanımlı aletler üstünde de katkısı büyüktür ve olağan şekilde sıklıkla bu makinelerde geliştiriciler tarafından kullanılmaktadır.

Şimdi bir kaç giriş değerleri denemesi yapalım ne de olsa buda zamanla işimize yarayacak bir fonksiyon olacak;
#!/usr/bin/python
ne = raw_input("Adiniz: ")
ne1 = raw_input("Soyadiniz: ")
print "Merhabalar " + ne + " " + ne1

Evet  "raw_input" fonksiyonunu kullanarak ekrana bir çıktı sağlaması yaptık bu ekranda adımızı ve soyadımızı sorup "Merhabalar" diyecek bir script yazmış olduk.

İlk anlatım şimdilik bu kadar diğer derslerde döngüler ve diğer ifadelerle ilgili yazımızla devam edeceğiz özellikle python ile sqlite kullanımı ve django üzerinde fazlaca duracağız. Asıl amacımız burda genel ifadeleri öğrenmek ve varolan bilgileri pekiştirmektir php ve python dili bildiğiniz üzere exploit yazarları için vazgeçilmez iki dildir bunun nedeni hem gelişmiş hemde bir o kadar becerikli diller olmasıdır ilerleyen derslerde exploit nasıl yazılacak ve algoritması nasıl kurulacak bunlarla devam edeceğiz. Elimden geldiği kadar yeni başlayan arkadaşların anlayacağı açık ve net bir dil kullanmaya çalıştım hatamız varsa affola.

Hoşçakalın :)


0 yorum:

Yorum Gönder

Blogger tarafından desteklenmektedir.