Привет всем, это мой первый пост.В настоящее время я пытаюсь изучить ООП Python.Что я сделал здесь, так это построил воображаемую печатную машину, используя ООП в Python.Но всякий раз, когда я запускаю аппарат или пытаюсь вставить чернила и т. Д.
я получаю эту ошибку:
TypeError murekkepDoldur() missing 1 required positional argument: 'self'
Это мой код:
class Makine : #This is where i def my printing machine class#
def __init__(self):
self.murekkep=100 #this means ink#
self.şarj=100 #this means charge
self.devir=0 #this means how many turns did machine worked#
self.mevcutDergi=[] #this means list of printed magazines#
def calis(self): #this means the work function for machine#
if self.murekkep>=10 and self.şarj>=5:
print("Makine çalışıyor.")
self.murekkep-=10
self.şarj-=5
self.devir+=1
elif self.murekkep<10 :
print("Yetersiz mürekkep!")
elif self.şarj<5 :
print("Yetersiz şarj!")
elif self.devir==10 :
a=input()
print("Yeni dergi çıktı!\nDerginin adı : "+ a)
mevcutDergi.append(a)
self.devir = 0
def murekkepDoldur(self): #this means add ink function#
if self.murekkep<=80:
self.murekkep+=20
print("Mürekkep dolduruldu!\nYeni mürekkep seviyesi yüzde
",self.murekkep)
def şarjDoldur(self): #this means charge battery function#
if self.şarj<=95:
self.şarj+=5
print("Şarj dolduruldu!\nYeni şarj seviyesi yüzde
",self.şarj)
def mevcutDurum(self): #this means show status function#
print("Makinenin murekkebi % ",self.murekkep,
"\nMakinenin şarjı % ", self.şarj,
"\nMakinenin devir sayısı : " ,self.devir,
"\nMevcut dergiler : ",self.mevcutDergi)
makine1=Makine
while True :
print("-"*30)
print("Matbaa Makinesi v0.1\n",
"Makineyi çalıştırmak için->1\n",
"Murekkep doldurmak için->2\n",
"Şarj doldurmak için->3\n",
"Mevcut durumu öğrenmek için->4")
print("-"*30)
komut = int(input())
if komut==1:
makine1.calis()
elif komut==2:
makine1.murekkepDoldur()
elif komut==3:
makine1.şarjDoldur()
elif komut==4:
makine1.mevcutDurum()
else :
print("Hatalı komut girdiniz!")
Спасибо заваша помощь!