简体   繁体   中英

Traceback (most recent call last): , line 131, in <module> print(self.marka) NameError: name 'self' is not defined

import time class Bilgisayar(): def __init__(self,islemci = " Intel Core i9",ekran_karti = "AMD Radeon Pro 5500M",şarj = 100,pc_durum = "Kapalı",internet_durumu = "Bağlı değil",model = "Macbook",ses = 0,marka = "Pro 2020",ram = 8): print("init fonksiyonu...") self.model = model self.marka = marka self.ram = ram self.islemci = islemci self.ekran_karti = ekran_karti self.ses = ses self.şarj = şarj self.pc_durum = pc_durum self.internet_durumu = internet_durumu def pc_ac(self): if self.pc_durum == "Açık": print("Bilgisayarınız zaten açık durumda.") else: print("Bilgisayar açılıyor.") time.sleep(2) self.pc_durum = "Açık" def pc_kapat(self): if self.pc_durum == "Kapalı": print("Bilgiisayarınız zaten kapalı durumda.") else: print("Bilgisayarınız kapatılıyor...") time.sleep(1) self.pc_durum = "Kapalı" print("Bilgisayarınız kapatıldı.") def wifiye_bagla(self): if self.internet_durumu == "Bağlı": print("Bilgisayarınız internete zaten bağlı.") else: print("İnternete bağlanıyor...") time.sleep(1) print("Bağlantı başarılı!") self.internet_durumu = "Bağlı" def internet_kapat(self): if self.internet_durumu == "Bağlı değil": print("Bilgisayarınız internete zaten bağlı değil") else: print("İnternet bağlantısı kesiliyor...") time.sleep(1) self.internet_durumu = "Bağlı değil" print("Bağlantı kesildi.") def ram_takviyesi(self,yeni_ram): print("Ram'e takviye yapılıyor...") time.sleep(2) self.ram += yeni_ram print("Takviye başarılı.") def ses_ayarı(self): while True: cevap = input("Ses kısma: -, Ses Açma: +,iptal etmek için 'iptal'") if cevap == "-": if self.ses != 0: self.ses -= 5 print("Ses:",self.ses) elif cevap == "+": if self.ses != 100: self.ses += 5 print("Ses:",self.ses) def şarja_takma(self,şarj_et): while True: cevap = input("Bilgisayarınızın mevcut şarjını giriniz:") if cevap >= 90: print("Şarja takmanıza gerek yok.") elif cevap == 50: print("Bir süre sonra şarja takabilirsiniz.") elif cevap <= 50: print("Bilgisayarınızı şarja takınız.") self.şarj += şarj_et print("Şarj etme başarılı.") elif cevap == 0: print("Bilgisayarınız kapanıyor.") time.sleep(1) self.pc_durum = "Kapalı" print("BB") else: print("Bilgisayarınızın şarjı zaten tam dolu.") def __str__(self): return "Bilgisayarın Markası: {}\nBilgisayarın Modeli: {}\nBilgisayarın Rami: {}\nBilgisayarın İşlemcisi: {}\nBilgisayar Durumu: {}\nBilgisayarın Ses Durumu: {}\nBilgisayarın Şarjı: {}\nBilgisayarın İnternet Durumu: {}\n".format(self.marka,self.model,self.ram,self.islemci,self.pc_durum,self.ses,self.şarj,self.internet_durumu) bilgisayar = Bilgisayar() print(""" Bilgisayarınıza Hoşgeldiniz! İşlemler: 1- Bilgisayarı aç 2- Bilgisayarı kapat 3- Bilgisayarın markasını öğrenme 4- Bilgisayarın modelini öğrenme 5- Bilgisayarın ramini öğrenme 6- Bilgisayarın işlemcisini öğrenme 7- Bilgisayarın ses ayarları 8- Bilgisayarın şarj ayarları 9- Bilgisayarın internet ayarları çıkmak için kapat/turn off yazabilirsiniz. """) while True: islem = input("İşlem giriniz:") if islem == "kapat" or islem == "turn off": print("Uygulamadan çıkılıyor...") time.sleep(1) break elif islem == "1": bilgisayar.pc_ac() elif islem == "2": bilgisayar.pc_kapat() elif islem == "3": print(self.model) elif islem == "4": print(self.marka)

In lines 129 and 130 you need to change the self.model and self.marka to be bilgisayar.model and bilgisayar.marka .

It runs fine for me after making those changes.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM