Python Deep Dive #
Temeller #
Python Kurulumu ve Çalışma Ortamı #
Python Kurulumu #
Ide ve Metin Editörleri #
Temel Python Söz dizimi - syntax #
Python’un sözdizimi, diğer programlama dillerine göre daha okunabilir ve basittir.
→ Yorum #
Yorumlar, kodun okunabilirliğini arttırmak, kod içinde açıklamalar yapmak için kullanılır. Kod blokları gibi işleme konulmaz, yok sayılırlar
#Örnek python yorum satırı.
"""
çok satırlı
python
yorumu.
Bu yapıyı kullanıyoruz çünkü ide de alt satıra geçtiğimizi görmüş olmak yeterli
değildir. Alt satıra geçtiğimizi bazı imgelerle belirtmemiz gereklidir.
"""
Değişkenler ve veri türleri #
Python’da veri türlerini 4 başlıkta açıklayabiliriz.
int : integer → Tam sayılar.
float : float → Virgüllü / ondalık sayılar.
str : string → Metinsel ifadeler.
bool : boolean → Mantıksal (Doğru/yanlış).
Kullandığımız verinin ne tipte olduğunu bilmek son derece önemlidir. Çünkü yapacağımız işlemler buna bağlıdır. Örneğin “+” operatörünü sayısal veriler ile kullanırsak toplama işlemi gerçekleşir ancak string ifadeleriyle kullandığımızda iki değer ardarda yazılarak birleştirilir.
→ String Veri tipi : #
Programlama dilinde metin parçaları string olarak adlandırılır. Her bir kelime de stringdir tek bir harf de. Stringler karakter dizilerilerdir.
Stringler birkaç farklı şekilde tanımlanabilirler.
'String ifadesi'
"String ifadesi"
"""
string
ifadesi
"""
'''
string
ifadesi
'''
İlk iki yöntemde bir değişiklik yokken, 3lü tırnak yapısında satırları kullandığımıza dikkat edin. Bu örnekleri az önce öğrendiğimiz yorum ile karıştırmayın. Bunlar programlamada kullanacağımız string değişkenlerinin içerikleri olacak veriler. Örnek üzerinde görmeden önce print() fonksiyonunu öğrenelim.
→ Print() Fonksiyonu #
Kısaca yazıcı gibi düşünebiliriz. İçerisine girilen değerin çıktısını verir. Ancak dikkat edilmesi gerekilen nokta içeri veri girerken belli başlı kurallara uymamız gerektiğidir.
print("Hello World!")
Programlamada işlem sırası her zaman sağdan sola doğrudur. Çift tırnak arasındaki Hello World! yazısı önce okunur ve tırnak yapısı sayesinde string tipinde olduğu anlaşılır. Ardından print fonksiyonu bize şu şekilde çıktıyı verir ;
Hello World!
Peki neden hem “ hemde ‘ kullanımı var ? İkiside aynı işe yarıyorsa ikisinin de olması saçma değil mi ?
Gelin bunu bir örnekle pekiştirelim.
Print fonksiyonu ile String birleştirme işlemi “+” operatörü ile gerçekleştirilir yazdırmak istiyorum. Hadi deneyin bakalım.
Görüldüğü üzere + işareti kayboldu. Peki neden ? Veri tiplerini anlatırken bundan bahsetmiştim aslında. + operatörü stringleri ardarda birleştirmek için kullanılır. Stringler ise tırnak yapısı ile tanımlanır. Yazdığımız kodda mor ile işaretli kısım bir string , yeşil ile işaretli kısım ise başka bir string olarak anlaşıldı. Ve aradaki operatör + olduğu için birleştirildi. Peki bir yolu yok mu bu karmaşıklığı çözmenin ? Farklı tırnak yapıları belki o kadar da kullanışsız değildir ha ?
Bakın ne oldu. Tek tırnak ile başlayan string’imiz tek tırnak ile bitti. Böylece karmaşıklık kalmadı. String içerisinde başka bir string olamayacağı için + nın yakınındaki tırnaklar belirteç olarak tanımlanmadı. Böylece istediğimiz çıktıyı almış olduk.
→ String Manipülasyonu #
String ifadelerinin sonunda yada başında boşluk bırakmadığımızda yazımda oluşan duruma dikkat edin. Kimi zaman kelimeleri boşluklu, kimi zaman bitişik yazdırmamız gerekecek.
Peki + operatörü olmadan nasıl birleşti bu stringler ? Python’un özelliklerinden biri. Dikkat edin her dilin kendine özgü syntaxleri vardır. Her özellik her dilde olmayabilir. Ancak + işareti kullandığımızda kodlarımız daha okunaklı ve düzenli oluyor.
→ Input() Fonksiyonu #
Input fonksiyonu için şu benzetmeyi yapabiliriz. Print fonksiyonu bir yazıcının çıktı işleviyse input ise tarayıcı işlevidir. Kullanıcıdan veri almamızı sağlar.
Program önce yeşil kısımdaki input içeriğini bize verdi. Bizde değer olarak bizden istediğii adımızı yazdık. Ardından print fonksiyonunu bizden aldığı veri ile birlikte yazdırdı. Print fonksiyonu ile inputu birbirlerine + operatörü ile bağladık.
name = input("Adın ne ?")
Bu örnekte ise name adında bir değişken oluşturduk. Input fonksiyonu önce Adın ne ? yazısını kullanıcıya gösterdi ve alınan değeri name değişkenine atadı.
→ len() Fonksiyonu #
len fonskiyonu içerisine girilen dizinin uzunluğunu hesaplar. Giriş verisi stringdir çıkış verisi ise integerdır.
1.Satırda sağdan sola doğru ilerleyelim. String değeri tırnak içerisinde olduğu için string değişkeni tanımlandı ve len fonksiyonu ile uzunluğu hesaplandı. Hesaplanan 6 değeri çıktı verildi.
4.satırdaysa denemedeneme2 birleşimi sağlandı 13 değeri çıktı alındı.
Değişkenler aslında her daim kullanılan bir kavramdır. Örneğin input fonksiyonunda girdiğimiz değer geçiçi bir değişkende depolanır. Compiler bu geçici değişkeni bizden gizler, ancak verinin ramde geçici depolanabilmesi için bir değişkene atanmış olması gerekmektedir. Değişkenlerin sözel sayısal vs farklı farklı türleri vardır. Üstte len fonksiyonu için a ve b gibi birkaç değişken kullanmıştık. Değeri değişkene atadığımızda bu değeri sonsuz kez kullanabiliriz. Oysa inputun içine girilen geçici değişken sadece tek kullanımlıktır.
name isminde bir değişken atayıp bu değişkende input tarafından girilen değeri tutacağız.
Önceki bilgilerimizide birleştirirsek
Görüldüğü üzere tek bir veri ile hem ismi yazdırdık hemde ismin uzunluğunu öğrendik.
Girilen isim name değişkenine atanır. Len fonksiyonunda girilen name değişkeninin uzunluğu hesaplanır ve length değişkenine atanır. Ardından length değişkeni çıktı alınır.
Değişken atamak tıpkı bir telefon defteri gibidir. Bir numara kaydedildiğinde tekrar tekrar her amaçla kullanılabilir.
Adındanda anlaşılabileceği gibi değişkenler yani variable değiştirilebilir.
→ Integer Veri tipi #
Tam sayılardan oluşan veri tipleridir.
→ Float Veri tipi #
Virgüllü sayılardan oluşan veri tipleridir.
→ Sayısal Veri tiplerinin Manipülasyonu / Matematiksel Operatörler #
input ile kullanıcıdan verileri aldık. A değişkeni : 3 , B değişkeni ise : 5 girdisini aldı. İki variable’ın değerlerini takaslamak istiyoruz bu yüzden swap için kullanacağımız C isimli bir variable oluşturduk. Aktarım tıpkı fonksiyonlardaki gibi sağdan soladır. A değeri C ye atandı. B’nin değerini A’ya atadık. Sırada A’nın orjinal değerini B’ye aktarmak kaldı. A’nın orjinal değerini C’de yedeklemiştik. Onuda B’ye aktardık.
Bunu a bardağındaki kahveyi b bardağındaki çay ile değiştirmek gibi düşünebiliriz. Aktarım için bir swap bardağına ihtiyacımız olacak.
Değişken Adlandırma #
Değişken adı tek bir kelimeden oluşmaktadır. Yani birden fazla kelime arada boşluk olacak şekilde yanyana gelemez. Örneğin user name gibi. user_name olabilir. user_Name olamaz. Caps’e dikkat.
Sayılar değişken isimlerinin başında yer alamaz. 1number olamaz, number1 olabilir.
Fonksiyon isimleri değişken adları olamaz, karışıklığa yol açar. Örneğin print, input gibi