Python Sınıfları ve Nesneleri
Python Sınıfları/Nesneleri
Python, nesne yönelimli bir programlama dilidir.
Python'daki hemen hemen her şey, özellikleri ve yöntemleri ile bir nesnedir.
Bir Sınıf, bir nesne oluşturucu veya nesneler oluşturmak için bir "plan" gibidir.
Sınıf Oluştur
Bir sınıf oluşturmak için anahtar kelimeyi kullanın class
:
Örnek
X adlı bir özelliğe sahip Sınıfım adlı bir sınıf oluşturun:
class MyClass:
x = 5
Nesne Oluştur
Artık nesneler oluşturmak için MyClass adlı sınıfı kullanabiliriz:
Örnek
p1 adında bir nesne oluşturun ve x'in değerini yazdırın:
p1 = MyClass()
print(p1.x)
__init__() İşlevi
Yukarıdaki örnekler, en basit biçimleriyle sınıflar ve nesnelerdir ve gerçek hayattaki uygulamalarda pek kullanışlı değildir.
Sınıfların anlamını anlamak için yerleşik __init__() işlevini anlamamız gerekir.
Tüm sınıfların, sınıf başlatılırken her zaman yürütülen __init__() adlı bir işlevi vardır.
Nesne özelliklerine veya nesne oluşturulurken yapılması gereken diğer işlemlere değer atamak için __init__() işlevini kullanın:
Örnek
Kişi adında bir sınıf oluşturun, ad ve yaş için değerler atamak için __init__() işlevini kullanın:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
p1 = Person("John",
36)
print(p1.name)
print(p1.age)
Not: Sınıf __init__()
, yeni bir nesne oluşturmak için her kullanıldığında işlev otomatik olarak çağrılır.
Nesne Yöntemleri
Nesneler ayrıca yöntemler içerebilir. Nesnelerdeki yöntemler, nesneye ait olan işlevlerdir.
Person sınıfında bir metod oluşturalım:
Örnek
Bir selamlama yazdıran bir işlev ekleyin ve bunu p1 nesnesinde yürütün:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def myfunc(self):
print("Hello my name is " + self.name)
p1 = Person("John",
36)
p1.myfunc()
Not: Parametre self
, sınıfın mevcut örneğine bir referanstır ve sınıfa ait değişkenlere erişmek için kullanılır.
öz parametre
Parametre self
, sınıfın mevcut örneğine bir referanstır ve sınıfa ait değişkenlere erişmek için kullanılır.
Adlandırılmış olması gerekmez self
, istediğiniz gibi çağırabilirsiniz, ancak sınıftaki herhangi bir işlevin ilk parametresi olmalıdır:
Örnek
self yerine mysillyobject ve abc sözcüklerini kullanın :
class Person:
def __init__(mysillyobject, name, age):
mysillyobject.name = name
mysillyobject.age = age
def myfunc(abc):
print("Hello my name is " + abc.name)
p1 = Person("John",
36)
p1.myfunc()
Nesne Özelliklerini Değiştir
Bunun gibi nesnelerdeki özellikleri değiştirebilirsiniz:
Örnek
p1 yaşını 40 olarak ayarlayın:
p1.age = 40
Nesne Özelliklerini Sil
Anahtar kelimeyi kullanarak nesnelerdeki özellikleri silebilirsiniz
del
:
Örnek
p1 nesnesinden age özelliğini silin:
del p1.age
Nesneleri Sil
Anahtar kelimeyi kullanarak nesneleri silebilirsiniz del
:
Örnek
p1 nesnesini silin:
del p1
Geçiş Bildirimi
class
tanımlar boş olamaz, ancak herhangi bir nedenle class
içeriği olmayan bir tanımınız varsa, pass
hata almamak için ifadeyi girin.
Örnek
class Person:
pass