+1 oy
Python kategorisinde (300 puan) tarafından soruldu
tarafından düzenlendi

Merhaba,

Televizyon kumandası programında biraz ekleme yaptım. Aşağıya yapıştırıyorum.

"""Kodlama Egzersizimizde yazdığımız Kumanda Sınıfına ek olarak metodlar ve özellikler eklemeye çalışın."""

import random
import time

class Kumanda():

    def __init__(self,tv_durum = "Kapalı",tv_ses = 0, kanal_listesi = ["TRT-1", "Show TV", "ATV", "Kanal B", "NHK", "TRT Avaz", "CNN Turk"\
    ],    kanal = "NHK"): #Kumanda sınıfı için açılış parametreleri giriliyor.

        self.tv_durum = tv_durum
        self.tv_ses = tv_ses
        self.kanal_listesi = kanal_listesi
        self.kanal = kanal

    def tv_ac(self): #Televizyonu açmak için kullanılan fonksiyon. Zaten açıksa bildiriliyor, yoksa açılıp bildirim görüntüleniyor.

        if(self.tv_durum == "Açık"):
            print("Televizyon zaten açık....")
        else:
            print("Televizyon Açılıyor...")
            time.sleep(1)
            print("Televizyon açıldı...")
            self.tv_durum  = "Açık"

    def tv_kapat(self): #Televizyonu kapatmak için kullanılan fonksiyon. Zaten kapalı ise bildiriliyor, yoksa kapatılıp bildirim gösteriliyor.

        if(self.tv_durum == "Kapalı"):
            print("Televizyon Zaten Kapalı..")
        else:
            print("Televizyon Kapanıyor....")
            time.sleep(1)
            print("Televizyon kapandı...")
            self.tv_durum = "Kapalı"

    def ses_ayarları(self): #Ses ayarları buradan yapılıyor. < tuşu ile ses azaltma, > tuşu ile ses artırma yapılıyor.

        while True:
            cevap = input("Sesi Azalt: '<'\nSesi Artır: '>'\nÇıkış(ENTER)    : ")

            if(cevap == "<"):
                if(self.tv_ses != 0):
                    self.tv_ses -= 1
                    print("Ses: ",self.tv_ses)
            
            elif(cevap == ">"):
                if(self.tv_ses != 31):
                    self.tv_ses += 1
                    print("Ses: ",self.tv_ses)
            else:
                print("Ses Güncellendi:",self.tv_ses)
                break
    
    def kanal_ekle(self,kanal_ismi): #Kanal ekleme buradan yapılıyor. Kanalların bulunduğu listeye giriş yapılıyor.
        print("Kanal ekleniyor....")
        time.sleep(1)
        self.kanal_listesi.append(kanal_ismi)
        print("Kanal Eklendi.....")
        
    def kanal_sil(self, kanal_ismi): #Kanal silme buradan yapılıyor. Silince bildirim gösteriliyor.
        print("Kanal siliniyor...")
        time.sleep(1)
        self.kanal_listesi.remove(kanal_ismi)
        
    def rastgele_kanal(self): #Rasgele bir numara belirleniyor ve kanal listesindeki karşılığı rastgele kanal olarak seçiliyor.
        rastgele = random.randint(0, len(self.kanal_listesi) - 1)
        self.kanal = self.kanal_listesi[rastgele]
        time.sleep(1)
        print("Şu anki Kanal:" ,self.kanal)

    def __len__(self): #Kanal listesinin uzunluğu döndürülüyor, ancak bu fonksiyonu harekete geçirecek bir komut bulamadım.
        return len(self.kanal_listesi)

    def __str__(self): #print(kumanda) yazılınca buradaki return emri ile belirtilen ifadelerin yazılması sağlanıyor.
        return "Tv Durumu: {}\nTv Ses: {}\nKanal Listesi: {}\nŞu anki kanal: {}\n".format(self.tv_durum,self.tv_ses,\
        self.kanal_listesi,self.kanal)

kumanda = Kumanda() #Kumanda sınıfından kumanda isimli bir nesne oluşturuluyor.

while True: #Menü öğeleri gösteriliyor.
    print("""
Televizyon Uygulaması
1. Tv Aç
2. Tv Kapat
3. Ses Ayarları
4. Kanal Ekle
5. Kanal Sil
6. Kanal Sayısını Öğrenme
7. Rastgele Kanala Geçme
8. Televizyon Bilgileri
Çıkmak için 'q' ya basın.
""")
    işlem = input("İşlemi Seçiniz: ") #Kullanıcıdan seçenek alınıyor.

    if(işlem == "q"): #Çıkış için.
        print("Program Sonlandırılıyor...")
        time.sleep(1)
        break

    elif(işlem == "1"): #Televizyonu açmak için.
        kumanda.tv_ac()
    
    elif(işlem == "2"): #Televizyonu kapatmak için.
        kumanda.tv_kapat()

    elif(işlem == "3"): #Televizyonun ses ayarları ile oynamak için.
        kumanda.ses_ayarları()

    elif(işlem == "4"): #Televizyona kanal eklemek için.
        kanal_isimleri = input("Kanal isimlerini ',' ile ayırarak girin: ")
        kanal_listesi = kanal_isimleri.split(",")
        for eklenecekler in kanal_listesi:
            kumanda.kanal_ekle(eklenecekler)
    
    elif(işlem == "5"): #Televizyondan kanal silmek için.
        silinecek_kanal = input("Silinecek kanalın adını giriniz: ")
        kanal_sil = kumanda.kanal_sil(silinecek_kanal)
    
    elif(işlem == "6"): #Kanal listesini göstermek için.
        print(kumanda.kanal_listesi)
        
    elif(işlem == "7"): #Rastgele kanal seçmek için.
        kumanda.rastgele_kanal()
            
    elif(işlem == "8"): #Televizyonun durumunu görüntülemek için.
        print(kumanda)

    else:
        print("Geçersiz İşlem......")

Edit: Bir sayın üyenin önerisi ile code snippet özelliğini öğrendim ve kodu yapıştırdım. Teşekkür ederim.

4 Cevaplar

0 oy
(1.1k puan) tarafından cevaplandı
Ellerinize sağlik
0 oy
(380 puan) tarafından cevaplandı
print(len(kumanda)) ile __len__ metodunu çalıştırabilirsin.
0 oy
(230 puan) tarafından cevaplandı
Merhaba,

Kodlar için " NORMAL " butonunun üstünde bulunan " Insert Code snippet" butonunu kullanmanız, cevaplayanlar ve görünüm açısından daha iyi olur.

 

İyi günler...
0 oy
(1.9k puan) tarafından cevaplandı
eleriniz dert görmesin bnce çok iyi
Yazılım Biliminin Soru Cevap Platformuna hepiniz hoşgeldiniz. Bu platformda kurallara uyarak diğer geliştiricilerle yardımlaşabilirsiniz.
...