Python'da Sınıflar
Bu makale, Python'daki sınıfları açıklar.
YouTube Video
Python'da Sınıflar
Python'da bir sınıf, nesne tabanlı programlama (OOP) içinde verileri düzenlemek ve bu veriler üzerinde çalışan yöntemleri tanımlamak için bir şablon görevi gören temel bir kavramdır. Sınıflar kullanarak veri yapıları oluşturabilir ve veriyle ilgili davranışları kapsülleyebilirsiniz.
Sınıfların Temelleri
Python'da bir sınıf tanımlamak için class
anahtar sözcüğünü kullanın. Aşağıda, basit bir sınıfın yapısı ve kullanımı gösterilmiştir.
1# Class definition
2class MyClass:
3 # Constructor (initialization method)
4 def __init__(self, attribute):
5 self.attribute = attribute
6
7 # Method (member function)
8 def display_attribute(self):
9 print(self.attribute)
10
11# Creating an object
12obj = MyClass("Hello, World!")
13obj.display_attribute() # Outputs "Hello, World!"
Bir Sınıfın Bileşenleri
Nitelikler
Bir sınıfın nitelikleri, bir nesne tarafından tutulan veri veya durumları ifade eder. Yukarıdaki örnekte, attribute
bir örnek niteliğidir.
Metotlar
Metodlar, bir sınıf içinde tanımlanan ve bir nesne üzerinde işlemler gerçekleştiren fonksiyonlardır. Örneğin, yukarıda gösterilen display_attribute
metodu.
Yapıcı (Constructor)
__init__
yöntemi yapıcı (constructor) olarak adlandırılır ve bir nesne oluşturulduğunda çalıştırılır. Bu, örneği başlatır.
Nesneler Oluşturma ve Yönetme
Bir sınıftan bir nesne oluşturmak, örnekleme (instantiation) olarak bilinir. Yukarıdaki örnekte, MyClass
sınıfından obj
oluşturulmak için örneklenmiştir. Oluşturulan nesne ile sınıfta tanımlı metodları çağırabilir veya niteliklere erişebilirsiniz.
Kalıtım (Inheritance)
Sınıflar, başka sınıflardan (ebeveyn veya temel sınıflar) niteliklerin ve metodların miras alınmasına olanak tanıyan kalıtımı destekler. Yeni bir sınıf (alt sınıf), işlevsellik eklemek için üst sınıfını genişletebilir.
1# Parent class
2class Animal:
3 def speak(self):
4 print("Some sound")
5
6# Child class
7class Dog(Animal):
8 def speak(self):
9 print("Bark!")
10
11# Instantiation and method call
12dog = Dog()
13dog.speak() # Outputs "Bark!"
Bu şekilde, Python sınıfları verileri ve prosedürleri mantıksal olarak ilişkilendirmenin güçlü bir yoludur. Polimorfizm ve kapsülleme gibi nesne yönelimli programlamanın diğer unsurları da sınıflar aracılığıyla uygulanabilir.
Python'da Modüller
Python'da bir modül, Python kodunu düzenlemek ve yeniden kullanmak için bir birimdir. Bir modül, Python kodu içeren bir dosyadır ve içindeki fonksiyonlar, sınıflar, değişkenler vb. diğer Python kodları tarafından içe aktarılabilir ve kullanılabilir. Modüller kullanılarak kod yeniden kullanılabilirliği artırılır ve programlar daha düzenli ve daha kolay bakım yapılabilir hale gelir.
Bir Modül Oluşturma
Bir modül oluşturmak için Python kodu içeren bir dosyayı kaydetmeniz yeterlidir. Örneğin, aşağıdaki içeriği içeren bir dosyayı my_module.py
olarak kaydetmek onu bir modül yapar.
1def greet(name):
2 return f"Hello, {name}!"
3
4pi = 3.14159
Bir Modülü İçe Aktarma
Oluşturulan bir modülü başka bir dosyada kullanmak için import
ifadesini kullanırsınız.
1import my_module
2
3# Using functions and variables from my_module
4print(my_module.greet("Alice"))
5print(my_module.pi)
Belirli fonksiyonları veya değişkenleri de içeri aktarabilirsiniz.
1from my_module import greet, pi
2
3# Names can be used directly.
4print(greet("Bob"))
5print(pi)
Modül Takma Adları
Bir modülü içe aktarırken bir takma ad atayabilirsiniz. Bu, kod yazarken modüle erişimi kolaylaştırır.
1import my_module as mm
2
3print(mm.greet("Charlie"))
4print(mm.pi)
Standart Kütüphane Modülleri
Python, çok çeşitli yerleşik standart kütüphane modülleri sağlar. math
modülü veya os
modülü gibi modülleri içeri aktarabilir ve kullanabilirsiniz.
1import math
2
3print(math.sqrt(16))
4print(math.pi)
Paketler
Bir paket, bir dizin yapısında düzenlenmiş birden fazla modülden oluşan bir koleksiyondur. Paketler kullanılarak daha fazla kod daha iyi organize edilir ve büyük ölçekli uygulamalara destek sağlanır.
Python'da modüller ve paketlerden yararlanmak, daha verimli ve düzenli programlar yazmanıza olanak tanır.
Yukarıdaki makaleyi, YouTube kanalımızda Visual Studio Code'u kullanarak takip edebilirsiniz. Lütfen YouTube kanalını da kontrol edin.