FIFA Uygulaması #3 – Sınıflar (__init__ , self)

__init__() Fonksiyonu

__init__() fonksiyonu sınıfımız örnekleme işlemini gerçekleştirdiğinde çalışan fonksiyondur.

Yani şöyle düşünelim. İnsan diye bir sınıfınız var ve yeni bir insan tanımlandığında (örneklendiğinde) kullanıcıya “Yeni İnsan Eklendi” diye mesaj göndermek istediniz. İşte bu iş için __init__ fonksiyonunu kullanabilirsiniz.

Biz bu init fonksiyonunu futbolcu oluşturduğumuzda varsayılan bilgileri girmek için kullanacağız.

Class sinif:
  def __init__():
    print “Yeni İnsan Eklendi”

insan=sinif()

 

Self nedir? Ne işe yarar? Kullanmak Zorunda mıyım?

Self ise bir sınıfı örneklerken (tanımlarken) ona ait değişkenlere ulaşmamızı sağlar.

Bunu şöyle düşünebiliriz. Sınıfın kendine ait özellikleri olabilir. Ama bazen biz oluşturduğumuz örnek’e özel özellikler oluşturmak isteyebiliriz. Mesela insanları düşünün bir sürü insan var ama hepsi farklıdır. Hepsi farklı özelliklere sahiptir. Biz oluşturduğumuz her örnekteki özelliklere ulaşmak için self i kullanırız. Örnek üzerinden inceleyelim.

class Oyuncu:
     def __init__(self):
         self.Adi = "Oyuncu1"
         self.Takimi ="Takim1"
         self.Hizi =0
         self.Puani = 0
         print "Yeni oyuncu eklendi"
 
 Ronaldo=Oyuncu()

 

Bu şekilde bir class oluşturduğumuzda ve örneklendirme yaptığımızda. Ekranda “Yeni oyuncu eklendi” yazısını görürüz. Ama Ronaldo.Adi sını yazdırırsak:

Ronaldo=Oyuncu()
print Ronaldo.Adi

 

Çıktı olarak:

Yeni oyuncu eklendi

Oyuncu1

Şeklinde bir yazı ile karşılaşırız. İşte init, bizim için bir class oluşturulup örneklendirildiğinde çalıştırmak istediğimiz kodları yazacağımız fonksiyondur.

Not: init’in sağındaki parantezin içine self konulması python söz diziminden gelir self olması şart değildir farklı bir isim de alabilir. Ama self yazın yazılımcılar arasında oluşan bir standarttır çünkü.

Şimdi de örneklendirme yaparken içine isim gönderelim. Bunun için __init__ fonksiyonuna bir parametre yazalım ve o parametreyi Adi değişkenine atıyalım:

class Oyuncu:

# self’in yanına bir parametre ekliyoruz.
     def __init__(self,ad):        # ve ad parametresini self.Adi değişkenine atıyoruz.
         self.Adi = ad
         self.Takimi = "Takim1"
         self.Hizi = 0
         self.Puani = 0
         print "Yeni oyuncu eklendi"
 
 Ronaldo=Oyuncu("Cristiano Ronaldo")
 print Ronaldo.Adi

ntp_3_kodlar.jpg

Çıktı:

Yeni oyuncu eklendi

Cristiano Ronaldo

 

Evet arkadaşlar sizde bu uygulama için geliştirme yapabilirsiniz. Mesela bir yandan takımlar için bir class oluşturabilirsiniz. Yada oyuncu class’ı için fonksiyonlar veya özellikler ekleyebilirsiniz. Unutmayın ben ateş yakma peşinde değilim. Ben sadece bir kıvılcım oluşturuyorum. Bu ateşi körükleyip büyütmek sizin elinizde. Herkese başarılar..

 

 

class Oyuncu:
     def __init__(self, ad):
         self.Adi = ad
         self.Takimi = "Takim1"
         self.Hizi = 0
         self.Puani = 0
         print "Yeni oyuncu eklendi"
 
 Ronaldo=Oyuncu("Cristiano Ronaldo")
 print Ronaldo.Adi

Çıktı:

Yeni oyuncu eklendi
Cristiano Ronaldo

FIFA Uygulaması #3 – Sınıflar (__init__ , self)’ için 2 yanıt

Yorum bırakın