Python Nedir?

python logo

Python1 1990 yılında Guido van Rossum2 tarafından Amsterdam’da geliştirilmeye başlanan açık kaynak kodlu, öğrenmesi ve kullanması kolay, nesne tabanlı, modüler ve yüksek seviyeli bir programlama dilidir.

Web tabanlı uygulamalar, bilimsel, ticarî ya da farklı amaçlar için her türlü yazılım, oyun, grafik, ses ya da resim uygulaması geliştirmek için tercih edilebilecek en iyi programlama dilidir.

Adı sanıldığının aksine piton yılanından değil İngiliz komedi grubu Monty Python’un 1969 yılında yayınladıkları Monty Python's Flying Circus3 adlı gösteriden almaktadır. Buna rağmen adı ve logosu piton yılanı ile özdeşleştiği için atıfta bulunulan gösteri dışında kullanılmasında sakınca bulunmamaktadır.

Python 1.0 sürümüne 1994 yılında ulaşmıştır. 2000 yılında ise 2.0 sürümü piyasaya sürülmüştür. 2008 yılından itibaren 3.x serisi kullanılmaktadır. Günümüzde hâlâ 2.x serisi kullanımda olsa da birçok güncel yazılım ve uygulama 3.x versiyonu ile geliştirilmektedir. Bu sebeple bu web sitesinde Python’un en güncel sürümü olan 3.x serisi kullanılacaktır.

Python'un Veri Bilimi Kütüphaneleri

Kütüphane (library) kavramı programcılıkta çok eski bir kavram olup içerisinde belirli fonksiyonların ve modüllerin barındırıldığı, programcıya büyük kolaylıklar sağlayan kod paketleridir. Kütüphaneler sayesinde dilenilen konularda hızlı çözümlere ulaşılabilir.

Python, bugün veri biliminde büyük bir öneme sahiptir. Birçok veri analisti Python’un kütüphanelerinden (modüllerinden)4 faydalanmakta, analizlerini yine bu kütüphaneler sayesinde yapabilmektedir. Dilerseniz ileride sıkça kullanacağımız bu kütüphanelere kısaca değinelim.

NumPy

numpy logo

Python’un en çok bilinen temel bilimsel paketidir. NumericPython’un kısaltması olan NumPy5 matrisler üzerinde çalışan Jim Hugunin adlı geliştiricinin 1995 yılında piyasaya sürdüğü Numeric kütüphanesini diğer birkaç geliştirici ile 2005 yılında NumPy adlı ile Python’a uyarlaması ile bizlere sunuldu.

NumPy ile bugün çok boyutlu dizi ve matris ile ileri seviye matematik hesaplamaları yapılabilmektedir. Normalde çok fazla kaynak ve işlemci hızı gerektiren işlemler NumPy sayesinde saniyeler içerisinde sonuçlanabilmektedir.

NumPy’ın veri biliminde ne kadar önemli bir kütüphane olduğuna ilerleyen bölümlerde detaylıca değineceğiz. numpy.org adresinden kütüphaneye erişilebilmekte, ne işe yaradığı ve son sürümü hakkında bilgi edinilebilmektedir. Fakat hemen belirtelim ki, kullanacağımız yazılımlarda NumPy kütüphanesini kolayca import edebileceğimiz için şimdiden indirmenize ve kurmanıza gerek bulunmamaktadır.

Pandas

pandas logo

Python’un bilinen ikinci en büyük veri bilimi kütüphanesi pandas’tır. 2008 yılında Amerikan iş adamı ve yazılım geliştiricisi Wes McKinney tarafından piyasaya sürülmüştür.

Pandas tamamen Python için geliştirilmiş olmakla birlikte nümerik tablolar ve zaman serilerinde yeni veri yapılarının ve algoritmalarının geliştirilmesine olanak tanımaktadır.

Pandas ile hafızadaki veya farklı türlerde bulunan veriyi okuyabilme ve yazabilme, veri setlerinin tekrardan boyutlandırılması veya döndürülmesi, etiket bazlı dilimleme, özel indeksleme ve büyük veri setlerini ayrıştırma, veri gruplama özelliği ile ayırma-uygulama-birleştirme uygulamaları, veri setlerinin birleştirilmesi ve birbirine eklenmesi, zaman serilerinde zaman aralığı oluşturma, frekans çevrimleri yapma, tarih öteleme ve geciktirme, veri filtrelemesi gibi birçok işlem çok kısa bir sürede yapılabilmektedir.6

NumPy gibi pandas’a da ilerleyen bölümlerde detaylıca değineceğiz. Meraklıları pandas.pydata.org adresini ziyaret edebilir ve pandas hakkında daha fazla bilgi sahibi olabilir.

Matplotlib

matplotlib logo

Matplotlib, 2012 yılında Amerikan nörobiyolog John D. Hunter tarafından Python programlama diline ve NumPy kütüphanesine eklenti olması amacıyla geliştirilen nümerik verileri grafikleştirmeye yarayan, veri biliminin en popüler üçüncü kütüphanesidir. Başlangıçta MATLAB programlama diline alternatif olarak sunulan matplotlib, bugün birçok veri setini MATLAB diline gerek kalmadan Python üzerinde grafikleştirmelere olanak sağlamaktadır.

Python’da “veri görselleştirmesi” denilince akla ilk gelen kütüphane olan Matplotlib’e matplotlib.org adresinden erişilebilir.

Scikit-learn

scikit-learn logo

Scikit-learn, bilinen diğer adıyla sk-learn, 2007 yılında Google’ın yaz okulunda veri bilimcisi David Cournapeau tarafından yazılan, daha sonra diğer bir veri bilimci Matthieu Brucher tarafından geliştirilmeye devam eden Python’un makine öğrenmesi konusunda bilinen en büyük kütüphanesidir.

Sk-learn ile veri setleri üzerinde sınıflama, regresyon, kümeleme gibi birçok analiz ve modelleme yapılabilmekte, makine öğrenmesi ile kullanıcı müdahalelerine gerek kalmadan yazılımın anlamlı sonuçlar bulabilmesi sağlanabilmektedir.

Meraklıları Python’un bilinen en büyük kütüphanelerinden biri olan sk-learn’e scikit-learn.org adresinde erişebilir.

Python’un bu kütüphaneler dışında SciPy, Scrapy, Keras, PyTorch gibi birçok farklı kütüphanesi bulunmaktadır.


Python Kurulumu

Python kurulumu oldukça basittir.

python kurulumu
Büyütmek için görselin üzerine geliniz ya da tıklayınız.

Öncelikle python.org/downloads/ adresinden Python’un son sürümünü indiriniz.

Sizin sürümünüz 3.10.2’den daha yukarı olacaktır. Bu sebeple listelenen son sürümü indirmelisiniz.

python kurulumu

Kurulum sırasında mutlaka Add Python 3.xx to PATH seçeneğini seçin. Ardından Customize installation’a tıklayın.

"Add Python 3.xx to PATH" seçimi ile Python Program Files’ın içine kurulacaktır. Aksi takdirde kendi belirlediği bir alanda kurulum gerçekleşecektir.

python kurulumu

Bir sonraki ekranda tüm seçimleri yapın ve Next’e tıklayın.

python kurulumu

Advanced Options penceresinde mutlaka Install for all users seçimini yapın. Bu şekilde Python artık Program Files’ın içine kurulacaktır. Diğer seçenekleri görseldeki gibi bırakın ve kuruluma başlayın.

python kurulumu

Kurulum bittiğinde görseldeki gibi bildirim penceresi açılacaktır. Herhangi bir yere tıklamadan Close düğmesine tıklayın.

Bu son pencerede Disable path lenght limit seçeneği çıktıysa seçimi onaylayın ve 260 karakterden fazla dosya yoluna izin verin.

python kurulumu

Python’un kurulumunu test etmek için WinKey tuşuna (Windows Logolu tuşa) birkez basın ve ardından “python” yazın. Listelenen Python 3.xx uygulamasını çalıştırın.

python kurulumu

Açılan pencerede komut alanına

>>> print(“Hello World”)

yazıp enter’a basın.

Bir alt satırda Hello World yazacaktır. Bu şekilde Python’un kurulduğuna emin olabilirsiniz.


Python IDE ve Editörleri

Python öğrenmeye başlamadan önce doğru IDE7 ve editör seçimi öğrenim sürecini kısaltabilir, daha keyifli kod yazmamızı sağlayabilir. Bu sebeple hangi IDE’yi kullanacağımızı belirlemeden önce işin uzmanlarının hangi IDE ve editörleri önerdiğini öğrenmekte fayda var. Biz de kısaca Python IDE ve editörlerinden söz edelim.

IDLE

idle logo

IDE’den farklı olarak açılımı Integrated Development and Learning Environment (Tümleşik Geliştirme ve Öğrenim Ortamı) olan IDLE, Python kurulumu sonrası varsayılan olarak gelen basit ve kullanışlı bir geliştirme ortamıdır.

idle gui

WinKey tuşuna basıldıktan sonra açılan pencerede “IDLE” yazılması yeterlidir. Ardından IDLE Shell 3.xx uygulaması başlatılabilir.

Kullanımı kolaydır. Çoğunlukla basit uygulamalar yazmak, kodları test etmek için tercih edilir. Çok eski bir IDE olduğu için bugün hâlâ işin uzmanları tarafından önerilmektedir. Buna rağmen gelişmiş projeler için ideal bir çalışma ortamı değildir.


Jupyter Notebook

jupyter notebook logo

Bilinen tüm IDE’ler içerisinde Jupyter Notebook en popüleri ve en kullanışlı olanıdır. 2014 yılında Kolombiyalı-Amerikalı fizikçi ve yazılım geliştiricisi Fernando Pérez tarafından Python kullanıcılarına sunulmuştur. Python ile hızlı uygulamalar geliştirmek ve testler yapmak için en iyi editörlerden biridir.

jupyter notebook gui

Kullanması ciddi anlamda basittir. Python ile veri bilimi öğrenimine Jupyter Notebook ile başlanılması tavsiye edilir. Tek başına indirilmektense Anaconda Veri Bilimi Platformu üzerinden kullanılması daha iyi sonuçlar verecektir. Jupyter Notebook bugün Python’un yanında C++, Ruby ve R gibi diğer programlama dillerini de desteklemektedir.


Spyder Notebook

spyder notebook logo

Az bilinmesine rağmen Python’un NumPy, Pandas, SciPy, Matplotlib gibi kütüphaneleri ile tamamen bilimsel çalışmalar yapmak için kullanıma sunulan ileri seviye geliştirme ortamıdır. 2009 yılında Fransız veri bilimcisi Pierre Raybaut tarafından oluşturulmuştur.

spyder notebook gui

Görselden de görüleceği üzere bilimsel hesaplamalar ve görselleştirmeler Spyder Notebook ile yapılabilmektedir. Jupyter Notebook’ta olduğu gibi tek başına indirilmektense Anaconda Veri Bilimi Platformu üzerinden kullanılması daha iyi sonuçlar verecektir.

Bugün Spyder Notebook çok ileri seviye projeler ve hesaplamalar için kullanılmakla birlikte Python öğrenimine başlangıç için ideal bir IDE değildir. Yine de ne işe yaradığına önbilgi sahibi olunmasında fayda vardır. Son sürümü Spyder5’tir ve ücretsiz olarak kullanıma sunulmuştur.


Visual Studio Code

visual studio code logo

Visual Studio Code (ya da VS Code), Microsoft tarafından 2015 yılında kullanıma sunulan, 14 farklı programlama dilini destekleyen geliştirme ortamıdır. Bugün birçok veri bilimcisi ve veri analisti Python projelerini Visual Studio Code üzerinde yazmaktadır. VS Code sadece Python için geliştirilmemesine rağmen güçlü eklenti ve muazzam topluluk desteği sayesinde Python öğrenimine başlangıç için en iyi IDE’lerden biridir.

visual studio code gui

Visual Studio Code’un çok güçlü eklenti seçeneği vardır. Başka bir bilgisayarda sıfırdan kurulsa bile Sync özelliği sayesinde daha önce kurulan eklentiler ve yapılandırmalar yeni bilgisayara uygulanabilir.

Hızlı, hafif ve kullanışlıdır.


PyCharm

pycharm logo

JetBrains tarafından 2010 yılında kullanıma sunulan ve tamamen Python programlama dili için geliştirilen PyCharm, bugün hem başlangıç hem de ileri seviye projeler geliştirmek en ideal Python IDE’sidir. Visual Studio Code kadar çok bilinmese de veri biliminde ileri seviye kullanıcılar güçlü özellikleri sayesinde PyCharm’ı Visual Studio Code’a tercih etmektedir. “Community” ve “Professional” olmak üzere iki sürümü vardır.

pycharm gui

Professional sürümü senelik ücrete tabi olmakla birlikte şirketler tarafından kullanılmaktadır. Community sürümü ise tamamen ücretsizdir.

PyCharm bugün ileri seviye veri bilimcileri tarafından kullanılmakla birlikte kullanıcı dostu arayüzü ve fonksiyonları ile Python’a yeni başlayanların ve ileri seviye kullanıcıların en sevdiği IDE’lerden biridir. Visual Studio Code kullanan biri bile uyumlu klavye kısayolları sayesinde rahatlıkla PyCharm’ı kullanabilmektedir.

Bu web sitesinde Python, PyCharm ile öğretilecek olup öğrenim sırasında kolaylık olması amacıyla programın özelliklerine ve kısayollarına sıkça değinilecektir.


Python Öğrenirken Hangi IDE En İyisi?

Linkedin'de yapılan bir anketin sonuçları aşağıdaki gibidir.

pycharm linkedin

Ankette 8888 oy kullanılmış, Python geliştirmelerinde %44 oyla en iyi IDE PyCharm seçilmiştir. PyCharm'ı %37 oyla Visual Studio Code takip etmektedir. Bu sebeple tüm Python derslerimiz boyunca PyCharm'ı kullanacak olup Visual Studio Code kullanıcılarını da es geçmeyeceğiz. Kütüphanelerin VS Code'da nasıl kurulduğunu özel olarak anlatacağım. PyCharm'da kütüphane kurmak ise tek bir sağ tık'a bakacak. Bu sebeple PyCharm her zaman bir adım önde olacak.

Bugün birçok veri bilimcisi ve veri analisti Python çalışmaları için en çok PyCharm'ı önermektedir. Şimdi dilerseniz PyCharm'ın nasıl kurulduğunu öğrenelim.

1 Piton okunur.
2 31 Ocak 1956 doğumlu Hollandalı bilgisayar programcısı
3 Monty Python’un Uçan Sirki
4 Kimi kaynaklarda “kitaplık” ve “paket” (package) terimleri de kullanılmaktadır.
5 Nampay okunur.
6 Pandas (Vikipedi)
7 IDE: Integrated Development Environment, Tümleşik Geliştirme Ortamı. Editörlerden farklı olarak içerisinde birçok eklenti ve uygulama bulunabilmekte, bu sayede projeler tek bir yazılım üzerinden yürütülebilmektedir.
<<< Önceki Konu
Sonraki Konu >>>