You are on page 1of 14

Python Nedir?

Guido van Rossum


Python 1990 yılında Guido van Rossum tarafından Amsterdam'da
geliştirilmeye başlanmış nesne yönelimli, yorumlanabilen, modüler ve
etkileşimli bir programlama dilidir.
Pek çok insan Python isminin piton yılanından geldiğini düşünse de aslında
durum böyle değildir. Python geliştiricisi Guido van Rossum, programlama
diline adını The Monty Python isimli bir İngiliz komedi grubunun Monty
Python's Flying Circus adlı gösterisinden esinlenerek vermi ştir. Her ne kadar
olayın aslı böyle olsa da Python programlama dilinin yılan figürü ile temsil
edilmesi bir gelenek haline gelmiştir.

Neden Python?
 Python dili C – C++ gibi dillerin aksine Interpreter, yani yorumlayıcı bir
dildir. Dolayısıyla derlemeye gerek kalmadan çalıştırabilir ve bu sayede çok
hızlı bir biçimde uygulama geliştirebilirsiniz.
 Eğer herhangi bir programlama dili biliyorsanız, Python'u öğrenme
hızınız  neredeyse okuma hızınızla doğru oranda olacaktır.

Python'ın Simgesi
 Python'un temiz söz dizimi sayesinde Python'da program yazmak veya
bir başkasının yazdığı programı okumak diğer dillere nispeten çok daha
kolaydır.
 Ek olarak söz dizimi sadece girintilere bağlı olduğu için uygulama
geliştiricileri söz dizimi ile uğraşarak vakit kaybetmezler.
 Python çapraz (cross) platform desteği syesinde birçok sistem üzerinde
çalıştırılabilir. Pek çok Linux dağıtımının içerisinde Python 2.x sürümü yüklü
gelmektedir. Ayrıca ülkemizde TUBİTAK tarafından geliştirilen Linux
dağıtımı Pardus'un da bel kemiğini yine Python oluşturmaktadır. Popüler
Linux dağıtımları da  Python'u çeşitli uygulamalarını geliştirmek için
kullanmaktadırlar. (Örnek olarak; Ubuntu Software Center)

 Python dünya çapında büyük üne sahip Google, Youtube, Yahoo! gibi
şirketler tarafından yazılım geliştirmek için kullanılmaktadır. Ayrıca Google,
ileri düzeyde Python bilgisine sahip kişilere iş imkanları sağlamaktadır.
Python geliştiricisi Guido van Rossum 2005 – 2012 yılları arasında
Google'da çalışmıştır.
 Python kullanarak masaüstü programlama, oyun programlama,
taşınabilir cihaz programlama, web programlama ve ağ programlama
çalışmaları rahatlıkla yürütülebilir.
 Python ile programlama yaparken kullanabileceğiniz pek çok IDE
(Integrated Development Enviroment – Tümleşik Geliştirme Ortamı)
mevcuttur. Bunlardan bazıları:
Eclipse, Pydev, Eric, Komodo IDE, PyCharm
 Python insan beynindeki düşünme olayı temel alınarak tasarlanmıştır.
Yani bir şeyin nasıl olması gerektiğini düşünüyorsanız, Python o şekilde
gerçeklenimini sağlar.
 Python, içerisinde barındırdığı Garbage Collector (çöp toplayıcı)
sayesinde uygulamanızın bellek kullanımını optimize eder. Bu durum
uygulamanızın kararlılığını ve performansını arttıracaktır.
 Python, tamamı ile nesne yönelimli bir programlama dilidir. Popüler
OOP dilleri ile yarışacak seviyede bir altyapıya sahiptir.
 Python, Java ve .NET platformları ile entegre biçimde çalışma
yeteneğine sahiptir.
 Hepsinden önemlisi Python "özgür" bir dildir.

Siz de vakit kaybetmeden güçlü ve hızlı Python'ın özgür dünyasındaki


yolculuğunuz için yerinizi ayırtın. Bu yolculukta herkese yetecek kadar koltuk
var!
Bu Yazıyı Hazırlarken Yararlandığım Kaynaklar:
 http://www.python.org/about/
 http://belgeler.istihza.com/py3/python_hakkinda.html
 http://www.belgeler.com/blg/2jqv/python-nedir
 http://mehmetkose.org/pythona-neden-gectim.html
 http://www.aydinmahmut.com/python-nedir/

Merhaba Arkadaşlar,
Mobilhanem.com da Python dersleri serisine başlangıç yapıyoruz Python
derslerinin bu serisinde İlk ders olarak Neden Python? sorusuna cevap
vermeye çalışacağım ve gerekli ortamların kurulumu anlatacağım umarım
sizler için faydalı bir yazı olur.

Neden Python?

Aslında bu soruya cevap vermeden önce kendimize bir kaç soru soralım o
zaman bu soruya cevap verebileceğimizi göreceksiniz.

Python Nedir?

Tek bir cümle ile anlatırsak Python çok çeşitli alanlarda kullanılan dinamik ,
yüksek seviyeli, ve nesne yönelimli bir  programlama dilidir.

Python’nu  diğer dillerden ayıran özellikleri ve avantajları nelerdir?

Öncelikle Python öğrenilmesi çok kolay olan katı kuralları olmayan basit söz
dizimi ile öğrenilmesi eğlenceli bir programlama dilidir. Ayrıca bu dilin
yorumlanabilir olması pek çok alanda ideal bir dil kılıyor. Hepsinin ötesinde
Python açık kaynaklı bir programlama dilidir. İstediğiniz şekilde ücretsiz
kullanma hakkına sahipsiniz.

Python nerelerde kullanılır ve Python ile neler yapabilirim?

Web Uygulamaları Geliştirme (Django ve Flask)

Mobil Uygulama  (Kivy)

Arayüz Geliştirme (PyQt, PyGTK, Tkinter, wxPython)

Oyun Programlama (PyGame)


Ağ ve Soket Programlama (Twisted)

Örümcek Türü Yazılımlar (Scrapy, Requests, Beatifulsoup)

Veri Madenciliği ve Büyük Veri (Numpy ,SciPy, Matplotlib, Pandas vb.)

Makine Öğrenimi ve Yapay Zeka Uygulamalarında (Scikit-Learn, Keras,


TensorFlow, Caffe)

Python bilmek bana ne kazandıracak?

Python yukarıda gösterdiğim gibi hemen her yerde sıkça kullanılan bir
programlama dilidir. Yani bu dil ile yapmak istedikleriniz sizin hayal gücünüze
bağlı işte tam bu yüzden Python Programlama dilini öğrenmeliyiz. Artık
neden Python sorusuna cevap veriyorsak devam edelim.

Python’u öğrenmeye karar verdiğimize göre şimdi Python kurulumu ve en


çok kullanılan geliştirme ortamlarına bakalım.

Python Kurulumu;

Öncelikle Python’u kullanabilmek için https://www.python.org/ adresine


giderek bilgisayarımız için uygun olan Python sürümünü indirelim ben dersleri
Python 3 ile anlatacağım için de sizlerde  3..x sürümlerini indirirseniz
derslerde sıkıntı yaşamazsınız. İndirme yaptıktan sonra karşınıza;

Python Kurulumu  

Şeklinde bir ekran gelecektir burada dikkat etmeniz gerek yer add path  
kısmını seçmeniz eğer seçmezseniz ileri zamanlarda kütüphane veya
framework eklemede sıkıntı yaşayacaksınızdır. Bu i şlemi yaptıktan
sonra Install Now tıklayıp yükleyelim.
Python IDE

Karşınıza böyle bir ekran geldiyse başarılı bir şekilde kurulumu yapmı şsınız
demektir. Şuan bulunduğunuz ekran Python’un kabuk kısmıdır ve burada kısa
komutlar ya da basit işlemler yapabilirsiniz dilerseniz file kısmından veya
CTRL+N tuşuna basarak yeni bir sayfa açıp kodlarınızı çalıştırabilirsiniz. Buraya
kodlarınızı yazdıktan sonra kodlarınızı çalıştırmak için Run>Run Module veya
direk f5 tuşuna basarak kodları çalıştırabilirsiniz.

Python’u bilgisayara kurduğumuza göre şimdi gelelim Python için çalı ştırma
ortamlarına bunun için en çok kullanılan birkaç çalıştırma ortamını
göstereceğim bunlara başlamadan önce şunu belirteyim illa ekstradan başka
bir şey kullanmayabilirsiniz işlerinizi Python IDE ile de yapmanız mümkün
ama hızlı olmak ve büyük projeler için IDE yetersiz gelecektir.

Python için en iyi beş geliştirme ortamı (IDE);

PyCharm :

Listenin ilk sırasında PyCharm var. PyCharm


Jetbrains firması tarafından geliştirilmiş açık kaynak bir çalışma ortamıdır.
PyCharm çok basit bir arayüz imkanı sağlayan bir Ide’dir ayrıca daha önce
eclips veya neatbeans gibi ortamlarda çalışmışsanız zorluk çekmezsiniz. Git
entegrasyonu ve güçlü hata açıklayıcısı na sahip olan  PyCharm, Python’a ek
olarak web geliştirme için JavaScript, HTML/CSS, Node JS, Angular vb. için
destek sağlar. Son olarak PyCharm veri bilimcileri için grafik ara yüz imkanı
sağlar bu yüzden çok kullanışlı bir Ide’dir.

Buradan https://www.jetbrains.com/pycharm/ indirebilirsiniz

VS Code(Visual Srudio Code):

Microsft tarafından geliştirelen açık


kaynaklı bir text-editördür, yani tam olarak bir ide değildir. Sebebi ise Visual
Stdudio Code Github’ın geliştirdiği Atom text- editörünün temelinde bulunan
Electon altyapısı üzerinde geliştirilmiş olması. Electro; Javascript, HTML ve
CSS ile çapraz platform Masaüstü uygulamaları geliştirmemizi sağayan
platfromdur. Ben Python web(Django,Flask) işlerim için kesinlikle Vs Code
kullanıyorum.

Jupyter Notebook:
Anaconda ile birlikte gelen bu çalışma ortamı Sunucu-istemci   yapısına
dayanan bir web uygulamasıdır. Yeni başlayanlar için çok kolay ve rahat bir
çalışma ortamıdır.

Buradan https://anaconda.org/ indirebilirsiniz.

Spyder:

Özellikle veri bilimi için hazırlanmış bu çalışma


ortamı anaconda ile hazır gelir. Ayrıca kütüphane ekleme sıkıntısı
yaşamazsınız çünkü bütün kütüphaneler kurulu olarak geliyor ayrıca e ğer
daha önce Matlab, RStudio kullanmış biriyseniz bu çalışma ortamı hemen
hemen bu çalışma ortamlarına benzer ara yüz sunuyor ama biraz ağır bir
ortam olduğunu söylemeden geçemeyeceğim.

Buradan https://anaconda.org/ indirebilirsiniz.

Atom :
Git tarafından geliştirilen açık kaynaklı bir
metin editörü olan Atom tabi ki de Git entegrasyonu sağlıyor. Ayrıca Java,
PHP vb. diğer dillerde de çalışma ortamı sağlıyor.

Buradan https://atom.io/ indirebilirsiniz.

Mobilhanem.com da Neden Python dersinin sonuna geldik anlamadığınız


yerler için çekinmeden iletişime geçebilirsiniz. Bir sonra ki dersimizde Python
da Veri Türlerini ve Temel Matematiksel İşlemleri göreceğiz. Bir sonraki
yazıda görüşmek üzere.

PRINT KOMUTU VE KAÇIŞ DIZILERI


Posted on 4/21/2013 by Mazlum Ağar
Python'ın işletim sistemlerine nasıl kurulacağından Python Nasıl
Kurulur? yazısında bahsedilmiştir.Bu yazıda artık kodlamaya doğru yol
alınacaktır.
Linux kullanıcıları uç birimi açarak "python" yazdıklarında resimdeki gibi bir
çıktı alacaklardır. Windows kullanıcıları ise Python Shell'i açtıklarında çok
benzer bir kod ile karşılaşacaklardır.
Yazılacak Python kodları >>> işaretinden hemen sonra (Kesinlikle bo şluk
bırakılmamalıdır.Eğer boşluk bırakılırsa program hata verecektir.) yazılmaya
başlanacaktır.

Uyarı : Burada yazılan kodlar Python 2.x ile yazılacaktır. Eğer sizde Python 3.x
kurulu ise bu kodlar çalışmayabilir.

Print Komutu
Print komutu adından da anlaşılacağı gibi ekrana yazı yazdırılmasını sağlar.
Hemen küçük bir deneme ile işe başlayalım. Komut olarak sadece "print"
yazın ve "enter" tuşuna basın. Görüleceği üzere hiç bir şey yapmadan bir alt
satıra geçti. Zaten verilen kod ile de bu isteniyordu. Şimdi print komutu
kullanılarak ekrana birkaç yazı yazdırılacaktır.
?
1 >>>print "pythondersleri.com"
2 pythondersleri.com
3 >>>print 'Python öğrenmeye başlıyorum.'
4 Python öğrenmeye başlıyorum.
5 >>>print """10"""
6 10
7 >>>print "Korsan Değil Özgür Yazılım"
8 Korsan Değil Özgür Yazılım
Yukarıda ki örneklerde görüldüğü gibi; print ile ekrana yazı yazdırmak için
sadece çift tırnak("yazı") kullanılmak zorunda değildir. Aynı zamanda tek
tırnak('yazı') ve üç tırnak("""yazı""") da kullanılabilir.

Aslında hangi tırnak işaretini kullanacağı birazda programcıya kalmıştır. Ama


bazı durumlarda tırnak hangi tırnak işaretinin kullanıldığı önem arz eder. Şu
şekilde bir örnek vermek gerekirse;
?
1 >>>print 'pythondersleri.com'un amacı herkese Python öğretmektir.'
Eğer bu şekilde bir kullanım yapılırsa program .com'un içindeki tırnak i şaretini
açılan tırnağın kapanışı zannedeceği için kafası karışacaktır.Zaten burada da
görüldüğü gibi renklendirme farklılaşmıştır.
?
1 >>>print "pythondersleri.com'un amacı herkese Python öğretmektir."
2 pythondersleri.com'un amacı herkese Python öğretmektir.
Bu şekilde bir kullanım da ise herhangi bir problemle karşılaşmadan ekrana
çıktı verilecektir. Söylendiği gibi programcı nerede hangi tırnak i şaretini
kullanacağına kendisi karar vermelidir.
?
1 >>>print """Python'ın ekrana yazdırma komuru "print"dir."""
2 Python'ın ekrana yazdırma komuru "print"dir.
Bu tarz tırnak problemleri "Kaçış Dizileri" ile de halledilebilmektedir.
Kaçış Dizileri
İlk kaçış dizi olan "\" işaretinden yukarıda verilen örnekler üzerinden açıklık
getirilebilir.
?
1 >>>print 'pythondersleri.com'un amacı herkese Python öğretmektir.'
Burada karşılaşın problem "\" işareti ile ortadan kaldırılabilmektedir. E ğer
kullanım şu hale getirilirse herhangi bir problem kalmayacaktır.
?
1 >>>print 'pythondersleri.com\'un amacı herkese Python öğretmektir.'
2 pythondersleri.com'un amacı herkese Python öğretmektir.

Burada kullanıcı Python'a "com'un içindeki tırnak açılan tırnağı kapatmak için
değil sen bunu atla ve yoluna devam et." demektedir. Python da bu yüzden o
tırnağı atlar ve herhangi bir problem ile karşılaşmaz.
?
1 >>>print "Python'ın ekrana yazdırma komuru \"print\" dir."
2 Python'ın ekrana yazdırma komuru "print" dir.

Not : "\" işaretinin bir diğer kullanımından da bahsedilmelidir.E ğer bir kod
yazılırken "\" kullanılır ve "enter" tuşuna basılırsa Python alt satırdaki kodun
üst satırdaki kodun devam olduğunu anlar. Şu şekilde bir örnek verebiliriz:
?
1 >>> print "Özgür yazılım için \
2 ... bir araya toplandık."
3 Özgür yazılım için bir araya toplandık.

"\n" kaçış dizisi ise ekrana yazı yazdırırken bir alt satırdan yazdırılmasını
sağlar.
?
1 >>>print "Bilgisayar Mühendisliği\nElektrik Mühendisliği"
2 Bilgisayar Mühendisliği
3 Elektrik Mühendisliği
"\t" kaçı dizisi kullanıldığı yerde boşluk bırakmak için kullanılır.
?
1 >>> print "İlk konu:\tprint komutu ve Kaçış Dizileri"
2 İlk konu: print komutu ve Kaçış Dizileri
Python'da yukarıda ki kaçış dizilerinden biraz daha farklı olan "r" kaçı ş dizisi de
bulunmaktadır."r" kaçış dizisi ifade içindeki bütün kaçı ş dizilerini etkisiz hale
getirir. Örneğin elimizde şöyle bir ifade olsun:
?
1 print "D:\\Python\nedir\tartisma"
2 D:\Python
3 edir artisma
Dikkatinizi çekmiş olmalı ki ifade de hem "\n" hem de "\t" kaçı ş dizisi
bulunmaktadır.Bu yüzden de bize istemediğimiz bir sonuç döndürmü ştür. İşte
tam bu nokta da "r" kaçış dizisi şu şekilde kullanılırsa "\n" ve "\t" kaçı ş dizileri
etkisiz hale gelecek ve istediğimiz sonuç ekrana dönecektir.
?
1 print r"D:\\Python\nedir\tartisma"
2 D:\\Python\nedir\tartisma

DEĞIŞKENLER
Posted on 4/22/2013 by Mazlum Ağar

Bir veriyi içerisinde depolayan birime değişken denir. De ği şkeni yandaki


kutuya benzetebilirsiniz.Siz ona bir değer verirsiniz. O da verdi ğiniz de ğeri
sizin için saklar. Değişken isimleri sayı ile başlayamaz ve program içinde
bulunan herhangi bir komut değişken ismi olarak atanamaz.

Eğer herhangi bir programlama dili ile ilgilendiyseniz de ği şkenler ile bol bol
uğraşmış olmanız gerekir. Diğer programlama dillerinde(C,C++,C#) bir
değişken tanımlanırken değişkenin adı yazılmadan önce türü yazılır.
int tamSayi=10;
char karakter = 'a';
cumle = "Bu bir cümledir."
float ondalikSayi = 2.5
Python programlama dilinde bu kural geçerli değildir. Değişken tanımlarken
adını ve değerini yazmak yeterlidir.Eğer Python gibi yorumlayıcı web
programlama dili olan PHP ile ilgilendiyseniz bu tanımla yolu size çok tanıdık
gelecektir. Yukarı da verilen değişkenleri Python'da tanımlayalım.
?
1 >>>tamSayi = 10 #integer
2 >>>karakter = 'a' #char
3 >>>cumle = "Bu bir cümledir." #string
4 >>>ondalikSayi = 2.5 #float
Aşağıda Python'da değişken kullanımları ile ilgili bir kaç örnek verilmi ştir.
?
1 >>> ad="Mazlum"
2 >>> soyad="Ağar"
3 >>> adSoyad = ad + soyad
4 >>> print adSoyad
5 MazlumAğar
Bu örnekte kullanılan "+" operatör dikkatinizi çekmiştir. Operatörler daha ileri
yazılarda detaylı bir şekilde incelenecektir. "+" operatörü iki karakter dizinini
birleştirmek için kullanılmıştır.
?
1 >>> sayi1=10
2 >>> sayi2=2
3 >>> print "sayi1 ve sayi2'nin carpimi", sayi1*sayi2,"dir."
4 sayi1 ve sayi2'nin carpimi 20 dir.
Bu örnekte ise birleştirme işlemi için "," kullanılmıştır. Bir önceki örnekte
kullanılan "+" operatörü sadece karakter dizilerini birleştirmek için kullanılır.","
ile her türden ifadeler birleştirilebilir. "," işaretinin burada yaptı ğı i şlem birden
fazla karakter dizisini tek bir karakter dizisine dönüştürmektir.
Değişkenleri yazdırmanın bir diğer yolu da şu şekildedir:
?
1 >>> adres="pythondersleri.com"
2 >>> gorev="herkese python ogretmektir."
3 >>> print "%s'un amacı %s"%(adres,gorev)
4 pythondersleri.com'un amacı herkese Python ogretmektir.
Float tipi değişkenler için ise değişken tanımlanırken sayı noktalı olarak
yazılmalıdır. Aşağıdaki örnekte görüldüğü gibi tanımlama yapılırken float
tipinden bir değişken olduğu belli olmaktadır. Bu yüzden artık o sayı
üzerinden işlem yapıldığı sürece sonuçlar da float tipinden dönecektir.
?
1 >>> sayi=3.6
2 >>> bol=sayi/2
3 >>> print bol
4 1.8

Dönüştürme İşlemleri
Bazı durumlarda değişkenler üzerinde tür dönüşümü yapmak zorunda
kalabilirsiniz. Program yazdıkça farkına varacaksınız ki; En çok dönüştürme
işlemi 'string' ve 'integer' ifadeler arasında yapılmaktadır. Tür Dönüşümü İçin
Kullanılan Fonksiyonlar:
 Float() => Herhangi bir sayı veya sayı değerli karakter dizisini noktalı
sayıya çevirir.
 int() => Herhangi bir sayıyı veya sayı değerli karakter dizisini tam sayıya
dönüştürür.
 str() => Herhangi bir sayıyı karakter dizisine dönüştürür.
Tür Dönüşümleri ile ilgili bir kaç örnek verilebilir.
?
1 >>> a = 2
2 >>> print float(a)
3 2.0
Bu örnekte görüldüğü üzere 'integer' tipinde değişken olan "a" float()
fonksiyonu ile 'float' tipine dönüştürülmüştür. Ekrana çıktı olarak da artık
noktalı sayı dönmüştür.
?
1 >>> a=10
2 >>> b="15"
3 >>> print a+b
4 Traceback (most recent call last):
5   File "<stdin>", line 1, in <module>
6 TypeError: unsupported operand type(s) for +: 'int' and 'str'
7 </module></stdin>
Bu şekilde bir kullanım yapılırsa görüldüğü gibi Python integer ve string türünü
toplayamadığı için hata döndürdü.Bu yüzden bunu şu şekilde yapabiliriz.
?
1 >>> a=10
2 >>> b="15"
3 >>> print a+int(b)
4 25
Bu kullanım çok mantıklı olmayabilir. İleri ki yazılarda kullanıcı ile etkile şime
geçildiği zaman bu dönüşümlerin ne kadar önemli olduğundan bahsedece ğiz.

You might also like