Python Notlarım #5 – Örnekler – Class Oluşturma

tarafından
41
Python Notlarım #5 – Örnekler – Class Oluşturma

Girilen sayının faktöriyelini hesaplama

# -*- coding: utf-8 -*-

sayi = int(input("Sayi : "))

faktoriyel = 1

if sayi<0:
    print("Negatif sayıların faktöriyerli hesaplanamaz")
elif sayi==0:
    print("Sonuç : 1")
else:
    for i in range(1,sayi+1):
        faktoriyel=faktoriyel*i
    print("Sayının faktöriyel: "+str(faktoriyel))

İç içe for kullanarak matris toplama işlemi yapma

# -*- coding: utf-8 -*-

x = [[1,3,5],[2,4,1],[1,5,7]]
y = [[3,3,4],[2,4,1],[3,5,4]]

sonuc = [[0,0,0],[0,0,0],[0,0,0]]

for i in range(len(x)):
    for j in range(len(y)):
        sonuc[i][j] = x[i][j] + y[i][j]
        
print(sonuc)

Cümle parçalama, sıralama ve for ile kelimeleri yazdırma

# -*- coding: utf-8 -*-

cumle = "buğün hava çok güzel"

kelimeler = cumle.split()

kelimeler.sort()

print(kelimeler)

for kelime in kelimeler:
    print(kelime)

Python Class Oluşturma ve İşlem Yapma

Aşağıdaki örnekte bir matematik sınıfı oluşturuldu. Sonrasında matematik = Matematik(2,78) kodu ile sınıfa 2 ve 78 değerleri gönderildi. Sonrasında toplama işlemini görmek için print ile yazdırıldı. Diğer işlemleri de aynı şekilde kullanarak yazdırabilirsiniz. Python da def __init__ olan kısmı kullanmak zorundasınız aynı zamanda self yazmalısınız yoksa hata vermektedir.

# -*- coding: utf-8 -*-

class Matematik:
    def __init__(self,sayi1,sayi2):
       self.sayi1 = sayi1
       self.sayi2 = sayi2
        
    def topla(self):
        return self.sayi1 + self.sayi2
    
    def cikar(self):
        return self.sayi1 - self.sayi2
    
    def carp(self):
        return self.sayi1 * self.sayi2
    
    def bol(self):
        return self.sayi1 / self.sayi2
    
matematik = Matematik(2,78)

print("Toplam = "+str(matematik.topla()))

Kişinin bilgilerini tutan person class’ ı ve miras alma işlemi

Person sınıfı tanımlandıktan sonra Worker ve Customer sınıfları oluşturuldu. Bu sınıflar class Worker(Person) şeklinde yapılarak person da tanımlanan özelliklere de erişim gerçekleşmiş oldu.

Yani ahmet = Worker() kodu yazıldıktan sonra; ahmet.firstName veya ahmet.salary özelliklerine aynı şekilde erişebiliyoruz. Customer tanımlanan da ise salary erişilemez ancak creditCardNumber özelliği erişilebilir olacaktır.

class Person:
    def __init__(self,firstName,lastName,age):
        self.firstName = firstName
        self.lastName = lastName
        self.age = age
    
    
person1 = Person("mehmet","yüce",24)
print(person1.firstName)

class Worker(Person):
    def __init__(self,salary):
        self.salary = salary
        
class Customer(Person):
    def __init__(self,creditCardNumber):
        self.creditCardNumber = creditCardNumber
        
ahmet = Worker()
mehmet = Customer()