Python

Python Nedir?

  • Post category:Genel
  • Post last modified:

Son yıllarda popülaritesini giderek artıran Python, çok sayıda büyük şirket tarafından da kullanılıyor. Python’un bu önlenemez yükselişi günümüzde çok sayıda insanı Python programlama dili öğrenmeye yöneltiyor. Dijital çağın en önemli trendleri arasına girmeye başlayan Python programlama dilini öğrenerek çok sayıda çalışma yapmanız ve çeşitli yararlar sağlamanız mümkün. 


Python Nedir?

Python’u kim buldu?” sorusunun karşılığı olarak karşımıza Guido Van Rossum ismi çıkıyor. 90’ların başında, Hollanda’da yaşayan Rossum tarafından geliştirilen programlama dili olan Python, sanılanın aksine adını yılandan değil, yazılımcının sevdiği bir gösteriden alıyor. Yüksek seviyeli, nesne yönelimli, modüler, etkileşimli ve yorumsal bir dil olan Python, çok sayıda işi az kod satırı kullanarak yapmayı sağlıyor.

Programlama dilleri, insan mantığı ile makine mantığı arasında bir köprü görevi görüyor. Bir programlama dilinin makine mantığına yaklaşabilmesi demek, makine üstünde çok daha hızlı çalışacağı anlamına geliyor. Fakat makine mantığına çok fazla yaklaşmak da insan mantığından epey uzaklaşmayı gerektiriyor. Bu durumda da insanlar için bu dili öğrenmek çok zor bir hale geliyor.


Bir programlama dili makine mantığından uzaklaşıp insan mantığına yaklaştıkça yüksek seviyeli bir dil olarak adlandırılmaya başlıyor. Bu nedenle de Python yüksek seviyeli bir dil olarak geçiyor ve pek çok programlama diline göre de öğrenmesi çok kolay oluyor. Masaüstü uygulamaları, görselleştirme uygulamaları ve web uygulamaları rahatlıkla Python ile yazılabiliyor. 

Python Ne İçin Kullanılır?

Python programlama dilini çok farklı amaçlar için kullanmak mümkün. Öncelikle Python’un Salt ve Ansible gibi araçlarda sistemsel gereksinimleri ve yapılandırmayı sağlayan, web tarayıcıları ya da uygulama GUI’leri ile etkileşimleri otomatik bir hale getiren özellikleri bulunuyor. Yani Script oluşturmak ya da otomasyon yapmak Python mevzubahis olduğu zaman buz dağının yalnızca görünen kısmı olarak kalıyor.

Python-kodlama

“Python neden kullanılır?” sorusunun en önemli cevaplarından bir tanesi uygulama programlama çalışmaları yapılabilmesi oluyor. Python kullanarak çoklu platformlara GUI uygulamaları ve konsol uygulamaları oluşturabilirsiniz. Hatta bunları bağım kurulum dosyaları olarak da kullanabilirsiniz. Python ile oluşturulmuş bir Script tek başına binary serisi oluşturamasa da üçüncü taraf programlarla bu durum imkansız olmaktan çıkıp mümkün bir hale getirilebiliyor. 

Python programlama dili, makine öğrenimi ve veri bilimi konusunda da önemli bir yere sahip. Bilindiği üzere günümüzde IT için sofistike olan veri analizleri önemli bir konu haline geliyor. Özellikle bu durumda Python, çok elverişli bir programlama dili oluyor. Çünkü Python’un arayüzünde bulunan kütüphanelerin pek çoğu veri bilimi ve makine öğrenimi konusunda elverişli. 

Python-nedir

Python kullanarak web servisleri ile RESTful API’leri kodlamak da mümkün oluyor. Python içindeki yerel kütüphaneler, üçüncü parti yazılımlarla bir araya geldiğinde ortaya yalnızca birkaç satır kod ile yazılmış çok hızlı bir web sitesi yönetimi oluşturulabiliyor. REST API’lerin uygun kod bloklarıyla oluşturulması halinde veri yürütme olayı hızlı bir şekilde yapılabiliyor. 

Özellikle Python’daki son güncelleme, asinkron operasyonlarını da daha güçlü bir yapıya dönüştürüyor. Doğru kütüphaneler kullanılarak sitelerde saniyeler içinde binlerce kod istemine karşılık veri akışları sağlanabiliyor. Bunun yanı sıra Python, metaprogramlama ve kod derlemesi konusunda da çalışabiliyor. Özellikle diğer dillerle karşılaştırıldığı zaman, tüm modeller ve kütüphaneler nesne olarak görev yapıyor.

Yazılım Nedir? Yazılım Kodlama Dilleri Nelerdir?

Bu da Phtyon’un etkili bir kod derleyici olmasına yardımcı oluyor. Kendi kod özellikleriyle yazılan uygulamalar manipüle edilerek diğer diller ile yazılması zor ya da imkansız olan uygulamalar, çok daha kolay bir şekilde yazılabiliyor. Ayrıca çoklu platform uygulamaları oluşturabilmesi de çeşitli kod derleyici sistemlerinde etkin Python kodları oluşturabilmek adına uygunluk yaratıyor.

Python, yapışkan kod olarak da kullanılabiliyor. Glue code olarak da adlandırılan Python, bu unvana C dilinin kütüphanesinde yer alan kodlarla ortaklaşa bir yapı oluşturup etkin şekilde program yapabilmeye yardım ettiği için alıyor. Dolayısıyla Python, makine öğrenimi ve veri bilimi konusunda eşsiz bir alternatif olarak ön plana çıkıyor.

Neden Python Kullanılmalıdır?

Öncelikle Python kullanmak için en geçerli sebeplerden bir tanesi programlama dilinin açık kaynaklı ve daima ücretsiz olmasıdır. Ayrıca sadeliği nedeniyle diğer programlara oranla çok basit olduğundan hiçbir zaman kaybı yaşamadan hızlı şekilde öğrenilebiliyor. Bunun yanı sıra Python ile karmaşık diller basitleştirilebiliyor ve akla gelen herhangi bir fikir, hızla hayata geçirilebiliyor.


Bunun yanı sıra Python, hem yeni başlayanlar hem de uzmanlar için çokça avantajı içerisinde barındırıyor. Yeni başlayanlar için Python gibi bir dili öğrenmek ve kullanmak çok kolay oluyor. Bu, bir sonraki aşamaya hızla geçmek için daha fazla istek ve zaman bırakıyor. Yeni başlayanlar karmaşık programlama dillerini öğrenebilmek için fazla zaman harcıyorlar veya yolun yarısında vazgeçiyorlar.

Aynı zamanda profesyoneller tarafından da Python, uygulanabilirliği fazla ve kullanım çerçevesi geniş olduğu için tercih sebebi oluyor. Adı fazla duyulmamış olmasına rağmen yazılımcılar arasında epey popüler olmakla beraber oldukça yaygın şekilde kullanılıyor. Github projelerinin büyük çoğunluğunda Python kullanılıyor. Github ve Tiobe Index gibi programlama örnekleri sıralanan sistemlerde, Python tabanlı olanlar üst sıralarda yer alıyor.

python-ogremek

Ayrıca Python’un kullanım alanları, en küçük işletim sistemlerinden tutun da en büyük işletim sistemlerine kadar çok sayıda OS tarafından destekleniyor. Hatta internetteki büyük yazılım kütüphanelerinin ve API destekli servislerin de muhakkak Python tabanlı wrappers veya bindingsleri oluyor. Bu yüzden Python, bütün bu servislerle rahatça arayüz oluşturabiliyor ya da bu kütüphaneleri direkt olarak kullanabiliyor.

Python, diğer yazılım dilleri arasında en hızlı programlama dili olarak görülemiyor olsa da çoklu platformlarda kullanılabilmesi yönü ile daima bir adım önde durabiliyor. Her ne kadar pratik Python dersleri sayesinde öğrenmesi kolay bir dil olarak geçse de asla basit bir dil olmuyor. Çünkü Python, web hizmetleri ve bağımsız uygulamalar bakımından kaliteli yazılımlar oluşturuyor.

python-ogremek

Python diğer programlama dilleri ile kıyaslandığı zaman çok daha sade olduğu için çok daha kolay öğreniliyor. Ayrıca çok daha hızlı olduğundan öğrenme ve kullanım aşamalarında zaman kaybı yaratmıyor. Aynı zamanda Python kullanırken ayrı bir derleyiciye ihtiyaç duyulmuyor. Daha düzenli bir kod dizilimi bulunduğundan insanlar kolayca okuyabiliyor ve anlayabiliyor.

Python; Windows, Linux, Mac, Symbian ve Unix gibi çok sayıda işletim sistemiyle uyumlu bir şekilde çalışabiliyor. Bu platformlar içinde ağ ve ara birim programlaması, veritabanı ve uygulama yazılımı gibi farklı alanlarda rahatça kullanılabiliyor. Hatta büyük yazılımların çok seri biçimde programlanması gerektiğinde de C ya da C++ gibi dillere oranla çok daha kullanışlı bir ortam yaratıyor.

Python’un Eksik Kalan Özellikleri

Python programlama dili, kaliteli uygulamalar yazabilmek için çok elverişli ve kullanışlı olsa da elbette bazı eksiklikleri ya da yeterli gelmediği alanlar da oluyor. Örneğin; yüksek düzey bir programlama dili olması onu sistem düzeyindeki programlamaları yapmak konusunda elverişsiz bırakıyor. Aynı zamanda platformlar arasındaki bağımsız binary dosyaları için çağrı yapılan durumlarda da ideal olmuyor.

Python ile Linus, Windows ve MacOS iletişim sistemlerine bir uygulama geliştirmek mümkün olsa da oluşturulan bu uygulama çok görkemli olamıyor. Python’da daima hız ön planda bulunduğundan ağır programlarda da işlevsellik aramamak gerekiyor. Eğer böyle bir işlevsellik arıyorsanız eski programlama dilleri olan C ve C ++ gibi dillere yönelebilirsiniz.









Aşağıdaki Python bölümü geniş bir Python programlama örnekleri koleksiyonu içerir. Örnekler Liste, dizeler, dictionary, grup, kümeler ve daha pek çok konuya aittir. Her program örneği, sorunu çözmek için birden fazla yaklaşım içerir. Python3 Örnekleri konusunda eklenmiş örnekler. Yeni Python Örnekleri eklenecektir. Python Karışık Örnekler.Basit Python Örnekleri. Ayrıca giriş seviyesinden ileri seviyeye kadar python konuları ve yazıları için şu yardımcı kaynaktan faydalabilirsiniz:python dersleri 

Örnek 1: Ekranda “Merhaba Dünya” yazdıran Python Örneği

  

Örnek 2: Kullanıcının İsmini Alarak Merhaba (kullanıcı ismi) Yazdıran Python Örneği

   Örnek 3: Girilen 2 Sayıyı Toplayan Python Örneği

Örnek 4: Girilen 2 Sayının Ortalamasını Bulan Python Örneği

     Örnek 5: Girilen Vize ve Final Notu Ortalaması Hesaplayan Python Örneği

   Örnek 6: Girilen 3 Yazılı Notunun Ortalamasını Bulan Python Örneği

   Örnek 7: Yazılı Ortalaması Girilen Öğrencinin Sınıf Geçme Durumunu (GEÇTİ – KALDI) Gösteren Python Örneği

   Örnek 8: Girilen Sayının Tek mi Çift mi Olduğunu Bulan Python Örneği.

   Örnek 9: Girilen Sayının Pozitif, Negatif, ya da 0 Olduğunu Bulan Python Örneği

   Örnek 10: Kullanıcının girdiği boy ve ağırlık değerlerine göre vücut kitle indeksini (VKİ=ağırlık/(boy*boy), boymetre cinsinden verilmeli) hesaplayınız. VKİ 18 ile < 25 aralığındaysa normal, VKİ 25 ile <30 aralığındaysa kilolu, VKİ 30 ve daha yüksekse obez, VKİ 35 ve daha fazlaysa ciddi obez olarak kabul edilir. VKİ’ni hesaplayarak kişinin durumunu yazdırınız

Çıktı:

      Örnek 11: Yaşı Girilen Kişinin Ehliyet Alıp Alamayacağını Gösteren Python Örneği

   Örnek 12: 1-100 Arası Sayıları Ekranda Listeleyen Python Örneği.



 


PYTHON KÜTÜPHANELERİ

Bir kütüphaneyi düşündüğünüzde burnunuza hemen o eski kitapların kokusu, gözünüzün önüne o sessiz atmosfer gelir. Eğer Python kütüphaneleri içerisinde girebilseydik karşımıza kodunuzda kullanabileceğiniz modüllerle dolu organiza raflar çıkardı. İşte bu yüzden bu kütüphaneler çeşitli fonksiyonelliğin kaynaklarıdır. Geliştiriciler farklı kütüphanelerde bulunan önceden yazılmış ve iyi tanımlanmış kodları kullanarak kod yazmaktan kaçınırlar.

Bu rehber size programcıların modüllerini alıp kendi kodlarında kullandığı en iyi Python kütüphaneleri hakkında bilgi verecek. Sıkı değil pratik çalışmayı seven insanlardan biriyseniz bu kütüphanelerin size neler sunduğunu mutlaka görmeniz gerek!

Python kütüphaneleri kullanarak verimli bir şekilde kod yazarak tüm script’e harcayacağınız zamandan kar edeceksiniz. Ama her şey sırayla. İlk adım olarak bir Python kütüphanesi nedir ve alakalı konseptler nelerdir onları öğrenelim.

Öncelikle Öğrenilmesi Gereken Önemli Konseptler

Farklı Python kütüphaneleri hakkında konuşmaya başlamadan önce bazı önemli konseptleri göz önünde bulundurmanız gerekiyor. Örneğin derin öğrenme makine öğrenmesine ait bir işlemdir. İnsanlar hatalarından nasıl öğreniyorsa bilgisayarlarda da aynı şey geçerli. Derin öğrenme makinelerin örnekten öğrenmesini hedefliyor.

Diğer bir alakalı terim de insan beynini temsil eden yapay sinir ağlarıdır. Hangi şekilde diye sorduğunuzu duyar gibiyim. Yapay sinir ağları, insanların şekilleri tanımlama yollarını taklit eden algoritmaların kombinasyonudur. Bu yüzden konsept insan biyolojisini ele alarak görüntü ve ses tanımayı (ikisinden birini) programlama dünyasıyla buluşturur.

Python Kütüphaneleri Nedir?

Öncelikle Python kütüphanelerinin gerçek hayatta gidip sizi etkileyen kitapları aldığınız kütüphanelerden farklı olmadığını anlamalısınız. Her ikisi de bilgi kaynakları koleksiyonudur.

python kütüphaneleri

Ancak Python kütüphaneleri kitaplar yerine size kodlama işleminizde kullanacağınız modüller sunar. Tüm profesyonel geliştiriciler detaylı hazırlanmış modüllerden faydalanır. Bir şeyi yapmanın kolay yolu varsa neden onu seçmeyesiniz ki?

Python kütüphaneleri arasında araştırma yapmaya başladığınızda asıl ve üçüncü parti kütüphanelerinin sayısız derinliklerinde kaybolacaksınız. Pek çok modül koleksiyonu mevcut. Hangisini seçeceğinize karar verirken kafa karışıklığı yaşayabilirsiniz. Farklı alanlarda sivrilmeye çalışan bir programcıysanız size en uygun kütüphaneyi bulmaz zorlu bir görev olabilir.

Python’un çok yönlü bir dil olduğundan haberdarsınızdır. Kullanım alanı veri biliminden web geliştirmeye ve hatta makine öğrenmesine kadar genişlediği için programlama dünyasının incisi olarak görülüyor. Acemi bir Python programcısıysanız bilgilerinizi zenginleştirmek için ders almanızı tavsiye ederiz.

Farklı Python kütüphaneleri farklı alanlarda modüller içerir. Sizinle TensorFlow, PyTorch, Numpy, Sklearn ve diğer popüler kütüphaneler içerisinde bir keşfe çıkacağız.

Bundan önce size bir soru sormak istiyorum; iş bulmakta zorlanan bir Python programcısı mısınız? Böyle durumlarda işverenlerin sorduğu bazı Python mülakat soruları hakkında okuma yapmanızı tavsiye ediyoruz. Bu soruları cevaplayamadığınız takdirde pozisyona hazır olmadığınız düşünülebilir. Python mülakat sorularından biri de Python kütüphaneleri hakkında konuşmayı gerektirir diyelim. Rehberimizi okuyarak bile bazı önemli noktalar üzerinde bilgi sahibi olabileceksiniz.

API ve Python: Göz Önünde Bulundurulması Gereken En İyi Kütüphaneler

API, application programming interface’in (uygulama programlama arayüzü) kısaltmasıdır. Makineden makineye iletişim aracılığıyla uygulamalar arasında etkileşimler için bir pencere oluşturur. Python’un API oluşturma işlemini hızlandıran framework’leri var. İşte seçebileceğiniz en yayın Python kütüphaneleri hakkında bazı seçenekler:

Flask

  • Flask, daha verimli bir API tasarlama işlemi sağlamak için tasarlanmış hızlı büyüyen bir web framework’tür. Flask’ın bunun yanı sıra pek çok olası kullanım alanı vardır.
  • Bu framework genel olarak web uygulaması geliştirmede kullanılır.
  • Flask hafif sıklettir. Birim testi için destek sağlar ve istemci taraflı oturumlarda çerezleri korur.
  • Geliştiricilerin bu framework’ü sevmesinin neden detaylı hazırlanmış olmasıdır. Öğrenebileceğiniz birçok farklı kullanım alanı mevcuttur.

Django

  • Django, Python temelli başka bir üçüncü parti web framework’tür.
  • Diğer Python kütüphaneleri arasında Django’nun ana işlevi karmaşık veri taban esaslı web sitelerini geliştirme işlemini basitleştirmektir.
  • Django kütüphanesi pek çok yönetim aracına sahiptir. Böylelikle geliştiriciler başka araçlar kullanmadan kod oluşturabilirler.
  • Django REST minimum kodla Web API’ları oluşturmak için kullanılan framework’tür.

Falcon

  • Falcon hafif sıklet, SWGI uyumlu bir web framework’tür. RESTful API’lar oluşturmak için tasarlanmıştır.
  • Yeni başlayanlar ilk projelerini oluştururken sunulan detaylı rehberlikten oldukça memnundur.
  • Falcon her türlü donanımda çalışır ve sadece iki üçüncü parti bağımlılıklara itimat eder.

Eve

  • Eve, Flask ve Cerberus tarafından desteklenen Python temelli ücretsiz bir REST API framework’tür.
  • Eşsiz, özelliklerle dolu RESTful web hizmetleri geliştirmeyi hızlandırır.
  • MongoDB’yi destekler ve eklentilerinden dolayı oldukça uyumludur.

AI ve Python: Faydalı Kütüphaneler

python kütüphaneleri

BT sektörü, öğrenme konusunda insan benzeri davranışlara sahip akıllı makineler gelişimini hızlandırıyor. İnsan zekasının simülasyonu özellikle bu bilim dalı için tasarlanmış çeşitli Python kütüphaneleri aracılığıyla gerçekleştiriliyor. Bir makinenin düşünmesiniöğrenmesini ve problem çözebilmesini istiyorsanız size yardımcı olacak şu kütüphanelere bir göz atmanız gerekiyor:

 

TensorFlow

  • TensorFlow açık kaynaklı bir kütüphanedir.
  • Bu modüldeki sayısal hesaplama veri akışı grafiklerinin kullanımını dahil eder.
  • Matematiksel eylemlerin kavramsallaştırılmasına farklı bir bakış açısı sunar.
  • Bu framework’le yapay sinir ağları oluşturabilir ve bu ağları eğitebilirsiniz.
  • Yapay sinir ağları örnekten öğrenmeyle yetiştirildikleri için yapay zekanın önemli bir parçasıdır. TensorFlow hakkında daha fazla bilgiye bu rehberin diğer bölümlerinde ulaşabileceksiniz.

PyTorch

  • PyTorch açık kaynaklı bir kütüphanedir.
  • Lua temelli bir framework’tür. Model oluşturma ve ürün ölçeklendirme için tasarlanmıştır.
  • Bu modül çok çeşitli makine öğrenmesi algoritmalarına sahiptir.
  • PyTorch kullanıcılara karmaşık tersör hesaplamaları gerçekleştirme olanağı sunar.
  • Ayrıca TensorFlow’un en büyük rakibidir.

Theano

  • Theano, çok boyutlu dizilere matematiksel operasyonlar gerçekleştiren Python temelli bir kütüphanedir.
  • Framework, CPU yerine GPU kullanır. Bu yüzden yüksek üretkenlik seviyelerine sahiptir.
  • Theano’yla geliştiriciler derin öğrenme modelleri veya wrapper kütüphaneleri oluşturur.
  • Framework’ün başka bir avantajı da büyük yapay sinir ağı algoritmaları için gerekli hesaplama yöntemlerini yönetebilmesidir.

Keras

  • Keras, derin öğrenme modelleri için kullanılan Python temelli bir kütüphanedir.
  • Diğer Python kütüphaneleri ile de uyumludur (TensorFlow ve Theano dahil).
  • Framework’ün ana amacı yapay sinir ağlarının hızlı prototiplenmesidir.
  • Geliştiriciler derin yapay sinir ağlarıyla deney yapabilir ve bu ağları eğitebilirler.

Scikit-learn

  • Scikit-learn veya Sklearn makine öğrenmesi modelleri oluşturmak için kullanılan Python temelli bir kütüphanedir.
  • Regresyon, kümeleme ve sınıflandırma için kullanılan pek çok öğrenme algoritmasına sahiptir.
  • Sklearn NumPy ve SciPy ile uyumludur. Yani farklı Python kütüphaneleri ile kolaylıkla çalışabilir. Bu kütüphane hakkında daha fazla bilgiye rehberimizin devamında ulaşabileceksiniz.

Raund Bir: PyTorch TensorFlow’a Karşı

Bu iki kütüphane arasındaki üstünlük rekabeti bir süredir devam ediyor. Ancak kimse her ikisinin de en iyi Python kütüphaneleri arasında yer aldığını inkar etmiyor. PyTorch da TensorFlow da makine öğrenmesiderin öğrenme ve yapay sinir ağları yönetimi modülleri sağlamak için tasarlandı.

Her iki framework de benzer alanlarda görevlendirildiğinden ikisinin arasında bir rekabet olması çok normal. Gelin ikisinin arasındaki ana farklara ve avantajlara göz atıp bu tartışmaya bir nokta koymaya çalışalım.

Meşhur Yaratıcılar: Facebook ve Google

BT sektörünün iki devi bu kütüphaneleri hayata geçirdi. PyTorch şaheseri Facebook’a ait ve Torch temelli. Peki ya TensorFlow? O da Google’ın incisi ve Theano temelli. Başka bir deyişle iki kütüphanenin de ailesi zengin ve meşhur.

Windows Desteği

Bir süredir Microsoft Windows işletim sisteminin kullanıcıları PyTorch partisine davet edilmiyor. Bu açık kaynaklı makine öğrenmesi kütüphanesi PyTorch Windows desteğini 2018’in Nisan ayında yayınladı. TensorFlow Windows kullanıcılarına ulaşmak için 2016 yılında bu adımı atmıştır.

Diğer İşletim Sistemlerine Destek

Bu iki Python kütüphanesinin desteklediği sistemler hala değişiklik gösteriyor. PyTorch Windows desteği iyi karşılansa da hala TensorFlow’un sunduğu daha çok şey var. PyTorch, Linux, macOS ve Windows desteğine sahipken TensorFlow Linux, macOS, Windows, Android ve JavaScript’te kullanılabiliyor. Google, JavaScript’te makine öğrenmesi için TensorFlow.js 1.0’ı yayınladı.

Yorumlar

Bu blogdaki popüler yayınlar

arduino ile servo kullanımı

Elektronik Devre Elemanları

Python Çalışan Kod Örnekleri