Python Programlama ile Neler Yapabilirim?
Aslımızda kodlamaya ve programlamaya pek ilgim yoktu ama arkadaşımın ısrarıyla Python öğrenmeye karar verdim. Python hakkında yeterli bilgiye sahip değilseniz, bu yazı sayesinde konu hakkındaki donanımınız artacak. Kendi deneyimlerimi ve öğrendiklerimi sizlerle paylaşmak istiyorum. İnanın bana, bu dilin öğrenmesi oldukça zevkli ve eğlenceli.
Konu | Açıklama | Ek Bilgi |
---|---|---|
Python Programlama | Python, açık kaynak kodlu ve ücretsiz bir programlama dilidir. Bir metin editörü ve Python yorumlayıcı ile kurulumu ve kullanımı basittir. | Python ile mobil uygulama, bilimsel uygulama, web yazılım, masaüstü uygulama vb. çok çeşitli alanlarda çalışmalar yapabilirsiniz. |
Python Veri Tipleri | Python'da çeşitli veri tipleri bulunmaktadır: Integer, Float, Long, List, Tuple, String, Dictionary, Complex vb. | Veri tipleri çeşitli işlemleri gerçekleştirmek ve verileri saklamak için kullanılır. |
Python Kurulumu | Python programlama, çeşitli işletim sistemlerine (Windows, MAC OS, Linux) kurulumu mümkündür. | Python'un resmi web sitesinden gerekli bilgiler ve dosyalar edinilebilir. |
Pycharm | Pycharm, Python tarafından sağlanan bir IDE'dir. Akıllı kod tamamlama, otomatik kod yenileme gibi özellikleri vardır. | Pycharm hem ücretsiz (Community Edition) hem de ücretli (Professional Edition) sürümlere sahiptir. |
Apache Lisansı | Apache Lisansı, açık kaynak kodlu yazılımların geliştirilmesine izin veren bir yazılım lisansıdır. | Bu lisans ile yazılımın kopyası hem kullanılabilir hem de dağıtılabilir. |
Yapay Zeka Uygulamaları | Python dilinde yapay zeka uygulamaları geliştirilebilmektedir. | |
Oyun Geliştirme | Python dilinde oyun geliştirme yapılabilir. | Python, basit oyun motorları ve daha karmaşık grafik kütüphaneleri ile geniş bir yelpazede oyun geliştirmek için kullanılabilir. |
Veri Madenciliği | Python dilinde veri madenciliği ve veri manipülasyonu yapılabilir. | Python, veri analizi ve makine öğrenmesi için kullanılan popüler bir dildir. |
Bilgisayar Güvenliği | Python dilinde bilgisayar güvenliği ve ağ güvenliği ile ilgili uygulamalar geliştirilebilir. | |
Web Geliştirme | Python dilinde web sitesi ve web tabanlı uygulamalar geliştirilebilir. | Python, web çerçevelerini (Django ve Flask gibi) destekleyen güçlü bir web geliştirme dilidir. |
Python programını yazmak oldukça basit bir işmiş; ben bile öğrendiysem siz de öğrenebilirsiniz. Eğer biraz olsun programlama hakkında bilginiz varsa, bu işi kavramanız çok hızlı olacak. Tabii ki hiçbir şey bilmiyor olsanız bile, vereceğimiz bilgiler ışığında kurulumunu gerçekleştirebilirsiniz.
Python Kurulumu ve İlk Adımlar
Python kurulumu için bir metin editörüne ihtiyacınız var. Ben ilk başladığımda, bilgisayarımdaki Not Defteri'ni kullanırım diye düşünüyordum ama sonra daha gelişmiş bir çalışma ortamının faydalı olacağını anladım. Bununla beraber Python yorumlayıcısını da edinmeniz gerekiyor. Metin editörü sayesinde programı yazabilirsiniz, yorumlayıcı ise yazdığınız bu programı okumaya ve çalıştırmaya yardımcı olur.
Örneğin, ben PyCharm isimli bir IDE kullanmaya başladım. İlk başlarda biraz karmaşık görünüyordu ama kısa sürede alıştım. İsterseniz siz de PyCharm'ı deneyebilirsiniz veya Visual Studio Code, Sublime Text gibi diğer editörleri de kullanabilirsiniz.
Bu kısa ama gerekli bilgiden sonra, asıl anlatmak istediğimiz noktalara başlayabiliriz. Python ile neler yapılabilir? Python ile mobil uygulama, bilimsel uygulama, hacking yazılımları, web yazılımları, oyunlar ve masaüstü uygulamalar yapabilirsiniz. Aslında bu biraz da size ve hayal gücünüze kalmış bir şey. Çünkü bu programlama dili ile neredeyse her şeyi yapmak mümkün.
Günümüzün trend listesinde yer alan kripto madenciliğinin farklı bir versiyonunu Python ile yapmak mümkün, yani veri madenciliği. Bunun yanında yapay zeka uygulamaları da yapılabilmektedir. Geçen gün bir arkadaşım, Python kullanarak basit bir chatbot geliştirdiğini anlattı. Etkilenmemek elde değil!
Complex; karışık ya da karmaşık ver tipi demektir. Python programlama dilinde karmaşık sayıları temsil eder.
Float; noktalı sayıları belirtir. 64 bit hassasiyeti yer almaktadır. Ayrıca çift şekildedir. Örnek vermek gerekirse, 5.23 gibi.
Integer; bütün sayının hepsini verir. Tam sayı olarak gösterir ve 32 bittir. Buna ek olarak Long Integer bulunur. Long da uzun aralıklarda yer alan tam sayıları ifade eder.
Dictionary; Adından da anlaşılacağı üzere, sözlük veri tipi demektir. Sözlükler tırnak içinde belirtilir.
List; nesnelerin veri tipidir. Bünyesinde değişik verileri bulundurabilir. Köşeli parantez içinde kodlaması gösterilir.
Tuple; liste benzer bir veri tipine sahiptir. Burada yapılan içerikler değiştirmeye kapılıdır. Parantez içinde yer alır.
String; belkide kodlama en önemli veri tipi String’dir. Burada karakter veri tipi kullanılır. Genellikle tırnak içinde gösterilir. Örnek vercek olursak; ‘Selam’, ‘’Gezelim’’, ‘’’’Gezegen burası’’’’ gibi veri tipleri kodlanır.
Python Programlama Nedir?
Python, bir programlama dili olduğu konusunda hemfikiriz sanırım. Peki ama neden bu kadar popüler? Açık kodlu bir programlama olması onu özgün kılmakta ve ücretsiz yapmaktadır. Zaten en çok bu yönüyle tercih edilmektedir. İşletim sisteminden tamamen bağımsız çalışır; yani Windows, MacOS veya Linux fark etmeksizin kullanabilirsiniz.
Python programlamanın etkileşim seviyesi yüksek bir kodlamaya sahip olduğunu öğrendim. Yeni başlayanlar için bile anlaşılır bir sözdizimi var. Ben daha önce başka dillerle uğraşmıştım ama Python kadar kolayını görmemiştim.
Birinci olarak uygulama otomatik kod yenileme ile gelmektedir.
Zengin navigasyon içeriğine sahiptir.
Akıllı kodlama ile tamamlama da büyük kolaylık sağlar.
Açık kaynaklı kod yapısı büyük avantaj oluşturur.
Yeni başlayanlar için bile basit bir sistemdir.
Pycharm indirmesi ve kurulumu oldukça kolaydır.
Hızlı ve pratik bir sistem verisine sahiptir.
Bu başlık altında biraz daha bu kodlama ile ilgili terimlerden bahsedeceğim. Fakat terimlere geçmeden önce bir konuyu daha hatırlatmak isterim. Python'un resmi sitesine girerek bu kodlama sisteminin programına sahip olabilirsiniz. Windows başta olmak üzere, sistemi MacOS ve Linux gibi işletim sistemlerine kurmak mümkün. Ayrıca site üzerinden farklı bilgiler de edinebilirsiniz.
Şimdi gelelim asıl konuya; terimler.
Python Veri Tipleri
Paylaşacağımız terimler, Python veri tiplerine aittir. Programlamada veri tipleri oldukça önemlidir çünkü bilgisayarın verileri nasıl işleyeceğini belirlerler.
1- Integer (int); Bütün sayıları temsil eder. Tam sayı olarak gösterir ve 32 bit veya daha fazla olabilir. Örneğin: 5
, -3
, 42
.
2- Float; Onlu sayıları belirtir. 64 bit hassasiyeti yer almaktadır. Örnek vermek gerekirse, 5.23
, -0.001
, 3.14
.
3- Complex; Karmaşık sayıları temsil eder. Matematiksel işlemlerde kullanılır. Örneğin: 2 + 3j
.
4- String (str); Belki de kodlamanın en önemli veri tipi stringdir. Burada karakter veri tipi kullanılır. Genellikle tırnak içinde gösterilir. Örnek verecek olursak: 'Selam'
, "Gezelim"
, "Gezegen burası"
gibi veri tipleri kodlanır.
5- List; Nesnelerin veri tipidir. Bünyesinde farklı verileri bulundurabilir. Köşeli parantez içinde kodlaması gösterilir: [1, 2, 3]
, ['elma', 'armut', 'şeftali']
.
MIT Lisansı
GNU Lisansı
Creative Commons Lisansı
6- Tuple; Listeye benzer bir veri tipine sahiptir ancak tuple'lar değiştirilemez (immutable). Parantez içinde yer alır: (1, 2, 3)
.
7- Dictionary (dict); Adından da anlaşılacağı üzere, sözlük veri tipi demektir. Anahtar-değer çiftleri içerir ve süslü parantez içinde kodlanır: {'ad': 'Ali', 'yaş': 25}
.
8- Set; Eşsiz öğelerden oluşan bir koleksiyondur. Süslü parantez kullanılır: {1, 2, 3}
.
Bu veri tiplerini öğrenmek, Python'da programlama yaparken işinizi çok kolaylaştıracaktır.
PyCharm Nedir?
PyCharm, Python tarafından geliştirilen bir geliştirme ortamı yani bir IDE olarak bilinir. IDE'nin açılımı da Entegre Geliştirme Ortamı olarak geçmektedir. Python programlama içerisinde en iyi ve yararlı olan IDE olarak PyCharm gösterilir.
İlk piyasaya çıkış tarihi 2010 yılının Temmuz ayındadır. O zamandan beri sürekli gelişmekte ve yeni sürümleri çıkmaktadır. Çapraz platform yapısındadır. Uygulama; Windows, Linux ve MacOS sistemlerinde çalışmaktadır.
Python PyCharm, iki farklı sürüme sahiptir:
1- Professional Edition; Bu sürüm ücretlidir. Ancak içinde web geliştirme, veri tabanlarıyla entegrasyon gibi farklı özellikler yer almaktadır.
2- Community Edition; Bu ücretsiz sürüm modelidir. Temel Python programlama ihtiyaçları için idealdir. Ben de başlangıçta Community Edition'ı kullandım ve ihtiyaçlarımı karşıladı.
PyCharm'ın Özellikleri
PyCharm özellikleriyle de kendinden söz ettirmektedir:
Otomatik kod tamamlama özelliği ile kod yazmak daha hızlı ve hatasız olur.
Zengin navigasyon içeriğine sahiptir. Kod içinde kolayca gezinebilirsiniz.
Akıllı kodlama ile hataları anında tespit eder ve düzeltme önerileri sunar.
Açık kaynaklı kod yapısı büyük avantaj oluşturur.
Yeni başlayanlar için bile basit bir sistemdir.
PyCharm kurulumu oldukça kolaydır. Hızlı ve pratik bir sistem verisine sahiptir.
Açık Kaynak Kodlu Yazılımlar ve Apache Lisansı Nedir?
2000 yılında adımı atılan şirketin, ilk yayımlanma senesi ise Ocak 2004 yılında olmuştur. İlk olarak Apache Yazılım Lisansı ismi ile piyasaya çıkmıştır. Daha sonradan Apache Lisansı ismini almıştır. Bu yazılım lisansı tamamen özgün ve özgürdür.
Yazılımın bazı sürümleri için telif hakkı bile gerekmemektedir. Apache Lisansı için açık kaynak kodlu yazılımların geliştirilmesine izin verilmektedir. Yazılım sistemleri birçok avantajı sayesinde bireyler tarafından tercih edilmektedir.
Ticari alanda faaliyet gösteren birçok yerde kullanılabilir.
Lisansın kopyası hem kullanılabilir hem de dağıtılabilir.
Apache Lisansı gibi birçok açık kaynaklı yazılım bulunmakta. Bu yazılımların her geçen gün arttığı bilinen bir gerçek. Artık çoğu insan açık kaynaklı yazılımları tercih ediyor. Yeni işine girişen gençler de hem basit ve açık olması sebebiyle tercihlerini bu yönde kullanıyor.
Açık Kaynak Kodlu Yazılımların Önemi
Hepimiz akıllı telefon kullanıcısıyız. Bu akıllı telefonların içinde bir işletim sistemi bulunuyor. Dünyada en çok kullanılan işletim sistemlerinden biri olan Android'tir. Bu işletim sisteminin bir gerçeği yer alıyor: Açık kodlu ya da kaynaklı yazılım ile geliştiriliyor. Yani Android, açık kaynaklı yazılım ile piyasa zamanında çıkıyor.
Bu kadar çok tercih edilmesinin en büyük nedeni özgün ve serbest olmasından kaynaklanıyor. Bireyler kodlama yaparken istediklerini kullanabiliyor. Tamamen açık olan bu kaynaklar bir izin istemeye gerek duymuyor.
Diğer yazılım lisansları ise şu şekilde:
MIT Lisansı
GNU Lisansı
Creative Commons Lisansı
Bunlara ek olarak yazımızda tanıttığımız Apache Lisansı.
Tüm yazılım lisanslarının kendi aralarında farklı işlevleri yer alıyor. Ancak içlerinden en çok Apache tercih ediliyor.
Kodlama Geleceğin Mesleği Olabilir
Hani hep vardır ya; "Geleceğin mesleği bu işte, bunu oku!" Bu bölümü okuduğun zaman ya da bu eğitimi aldığında geleceğin parlak olacak derler. Kodlama da öyle bir sektör. Çoğu bilişim ve farklı sektörlerden uzmanlara göre kodlama veya yazılım sektörünün önü açık.
Çoğu yaşadığımız olguların artık hepsi bilgisayar üzerinden kodlama sayesinde yapılıyor. En ufak bir kumanda ya da bilgisayar, kısacası küçük bir elektronik alet için bile kodlama veya yazılım gerekiyor. Olmazsa olmazlarımız arasına giriyor. Böyle olunca, önü açık bir meslek grubu oluyor.
Yeni nesil sektöre, öğrenciler de sıcak bakıyor. Ancak öğrencilik yıllarını geçmiş ve yazılım öğrenmek isteyenler de merak etmesin; Python size bir imkan sağlıyor. Python sayesinde sizler de kendi ihtiyaçlarınızı karşılayabilecek kadar kodlama bilgisine sahip olabilirsiniz. Merak ettiğiniz birçok konuyu ve bilgiyi kurslara katılarak veya eğitim alarak öğrenebilirsiniz.
Ben de böyle başladım; birkaç arkadaşla birlikte bir kursa yazıldık. İlk başlarda zor gelse de, bir süre sonra mantığını kavradıkça işler eğlenceli hale gelmeye başladı. Şimdi kendi küçük projelerimi yapıyorum. İnsanın kendi kodunu çalışırken görmek gerçekten tarif edilemez bir duygu.
Python ile Neler Yapılabilir?
Anahtar kelimemizi de unutmadan, Python ile neler yapılabilir? sorusuna daha detaylı bakalım.
Python'un esnekliği ve geniş kütüphane desteği sayesinde yapabileceğiniz bazı şeyler:
1- Web Geliştirme: Django, Flask gibi web framework'leri ile dinamik web siteleri oluşturabilirsiniz.
2- Bilimsel Hesaplamalar ve Veri Analizi: NumPy, Pandas, Matplotlib gibi kütüphaneler sayesinde veri analizi ve görselleştirme yapabilirsiniz.
3- Makine Öğrenimi ve Yapay Zeka: Scikit-Learn, TensorFlow, Keras gibi kütüphanelerle makine öğrenimi modelleri geliştirebilirsiniz.
4- Oyun Geliştirme: Pygame gibi kütüphaneler kullanarak basit oyunlar oluşturabilirsiniz.
5- Mobil Uygulama Geliştirme: Kivy gibi framework'ler ile mobil uygulamalar geliştirebilirsiniz.
6- Sistem Scripting ve Otomasyon: Günlük işleri otomatikleştirmek için script'ler yazabilirsiniz.
7- Robotik ve Nesnelerin İnterneti (IoT): Raspberry Pi gibi cihazlarla proje geliştirebilirsiniz.
8- Veri Madenciliği ve Web Scraping: Beautiful Soup, Scrapy gibi kütüphanelerle web'den veri çekebilir ve analiz edebilirsiniz.
Liste uzayıp gider. Python, hayal gücünüzle sınırlı bir dil.
Kendi Deneyimlerim ve Tavsiyelerim
Python öğrenmeye yeni başlayanlara birkaç tavsiyem olacak:
Temel Bilgileri İyi Öğrenin: Öncelikle temel veri tipleri, döngüler, fonksiyonlar gibi konuları iyi kavrayın.
Proje Yapmayı Deneyin: Öğrendiklerinizi küçük projelerle pekiştirin. Örneğin, basit bir hesap makinesi veya not tutma uygulaması yapabilirsiniz.
Topluluklara Katılın: Stack Overflow, GitHub gibi platformlarda sorular sorun, kod paylaşın.
Eğitim Kaynaklarından Faydalanın: Kitaplar, kurslar ve videolarla kendinizi geliştirin.
Ben, "Python Crash Course" adlı bir kitap okumuştum. Gerçekten çok faydalı oldu. Ayrıca, üniversitede bilgisayar bilimleri derslerinde kullandığımız bir kaynak vardı:
Kaynak: Zelle, J. M. (2010). Python programming: An introduction to computer science. Franklin, Beedle & Associates.
Sonuç
Kodlama öğrenmek, aslında sandığımız kadar zor değilmiş. Python, bu yolda en büyük yardımcımız olabilir. Açık kaynaklı olması, geniş topluluk desteği ve esnekliği ile herkesin rahatlıkla öğrenebileceği bir dil.
Unutmayın, önemli olan başlamak ve pes etmemek. Belki de geleceğin mesleğini öğreniyorsunuz.
Referanslar
1- Lutz, M. (2013). Learning Python. O'Reilly Media.
2- Zelle, J. M. (2010). Python programming: An introduction to computer science. Franklin, Beedle & Associates.
3- VanderPlas, J. (2016). Python Data Science Handbook. O'Reilly Media.
4- Sweigart, A. (2015). Automate the Boring Stuff with Python. No Starch Press.
5- Rossum, G. van, & Drake Jr, F. L. (2006). Python Reference Manual. PythonLabs.
İstanbul İşletme Enstitüsünde yazılarının yayınlanmasını isteyen konuk yazarlarımız için oluşturulan bilgi kartıdır. Birçok alanda ve disiplindeki yazıları bu hesap üzerinde bulabilirsiniz.