Python basılan tuşları algılama ve işleme alma

Katılım
8 Eylül 2018
Mesajlar
1.482
Çözümler
4
Yer
System32
Daha fazla  
Cinsiyet
Erkek
Meslek
Öğrenci
Python:
print("Alan hesaplayıcı")
csm_liste = ["kare", "dikdörtgen", "daire"]
pi_sayisi = 3
while True:
    hesaplanacak_cisim = input("Alanı hesaplanacak cismin adı:")
    if hesaplanacak_cisim in csm_liste:
        if hesaplanacak_cisim == ("kare"):
            kare_kenar = int(input("Kare'nin kenar uzunluğu:"))
            print("Alan", (kare_kenar)*(kare_kenar))
        if hesaplanacak_cisim == ("dikdörtgen"):
            kenar_bir = int(input("1.Kenar uzunluğu:"))
            kenar_iki = int(input("2.Kenar uzunluğu:"))
            print("Alan", (kenar_bir)*(kenar_iki))
        if hesaplanacak_cisim == ("daire"):
            yaricap = int(input("Yarıçap:"))
            print("Pi sayısı '3' alındığında sonuç:", (pi_sayisi)*(yaricap)*(yaricap))
Böyle bir şey yaptım ve "n" tuşuna basınca durmasını istiyorum. Ama nasıl yapacağımı bilmiyorum. Bunu yapabilmek için neleri bilmeye ihtiyacım var ve nasıl yaparım?
 
Öncelikle Python'da pi sayısı zaten tanımlı. Onu kullanmanızı tavsiye ederim. Devamında açtığın konulara yazılan mesajlara bakarsan daha güzel olur.
Koda gelecek olursak 6. satırda if koymuşsun ama bunun bir else'i olmalı. Dik dörtgende kısa kenar ve uzun kenar demen daha hoş durur.
Normalde zaten o if'ten sonra duracak kod. Sen neyi istiyorsun ki?
 
Öncelikle Python'da pi sayısı zaten tanımlı. Onu kullanmanızı tavsiye ederim. Devamında açtığın konulara yazılan mesajlara bakarsan daha güzel olur.
Koda gelecek olursak 6. satırda if koymuşsun ama bunun bir else'i olmalı. Dik dörtgende kısa kenar ve uzun kenar demen daha hoş durur.
Normalde zaten o if'ten sonra duracak kod. Sen neyi istiyorsun ki?
Şimdi bu kod sonsuza kadar çalışmaya devam ediyor, ben herhangi bir anda "n" tuşuna basılması durumunda programın direk kapanmasını istiyorum. Bunu merak ediyorum. Ayrıca if-else kullanımını bilmiyorum :( ama pek sorun değil.
 
Bu kod için if-else önermek durumundayım. En sonda kullanıcıdan işlemi bitirip bitirmeyeceğine dair input almayı deneyebilirsiniz. İf bloğu oluşturursunuz. Kullanıcı N tuşuna basarsa break komutu ile döngüyü bitirirsiniz.
 
Bu kod için if-else önermek durumundayım. En sonda kullanıcıdan işlemi bitirip bitirmeyeceğine dair input almayı deneyebilirsiniz. İf bloğu oluşturursunuz. Kullanıcı N tuşuna basarsa break komutu ile döngüyü bitirirsiniz.
Ben de n tuşuna bastığını algılaması için ne yazmam gerektiğini ve nasıl bitireceğimi soruyorum :D yani "n" tuşuna basıldığını algılaması için ne yazmam gerekiyor bunu merak ediyorum.
 
Pardon. Başa While koyduğunuza dikkat etmemişim. Onu koymanıza gerek yok. Python'u nereden öğrenmeye çalışıyorsunuz bilmiyorum ama pek iyi bir yer değil gibi.
Bu şekilde olmalı yani:
Python:
print("Alan hesaplayıcı")
csm_liste = ["kare", "dikdörtgen", "daire"]
pi_sayisi = 3
hesaplanacak_cisim = input("Alanı hesaplanacak cismin adı:")
if hesaplanacak_cisim in csm_liste:
    if hesaplanacak_cisim == ("kare"):
        kare_kenar = int(input("Kare'nin kenar uzunluğu:"))
        print("Alan", (kare_kenar)*(kare_kenar))
    if hesaplanacak_cisim == ("dikdörtgen"):
        kenar_bir = int(input("1.Kenar uzunluğu:"))
        kenar_iki = int(input("2.Kenar uzunluğu:"))
        print("Alan", (kenar_bir)*(kenar_iki))
    if hesaplanacak_cisim == ("daire"):
        yaricap = int(input("Yarıçap:"))
        print("Pi sayısı '3' alındığında sonuç:", (pi_sayisi)*(yaricap)*(yaricap))
 
Pardon. Başa While koyduğunuza dikkat etmemişim. Onu koymanıza gerek yok. Python'u nereden öğrenmeye çalışıyorsunuz bilmiyorum ama pek iyi bir yer değil gibi.
Bu şekilde olmalı yani:
Python:
print("Alan hesaplayıcı")
csm_liste = ["kare", "dikdörtgen", "daire"]
pi_sayisi = 3
hesaplanacak_cisim = input("Alanı hesaplanacak cismin adı:")
if hesaplanacak_cisim in csm_liste:
    if hesaplanacak_cisim == ("kare"):
        kare_kenar = int(input("Kare'nin kenar uzunluğu:"))
        print("Alan", (kare_kenar)*(kare_kenar))
    if hesaplanacak_cisim == ("dikdörtgen"):
        kenar_bir = int(input("1.Kenar uzunluğu:"))
        kenar_iki = int(input("2.Kenar uzunluğu:"))
        print("Alan", (kenar_bir)*(kenar_iki))
    if hesaplanacak_cisim == ("daire"):
        yaricap = int(input("Yarıçap:"))
        print("Pi sayısı '3' alındığında sonuç:", (pi_sayisi)*(yaricap)*(yaricap))
Teşekkür ederim. Ben bunu istediğim gibi yapmayı başardım. Amacım bunu bir uygulamaya dönüştürüp sonra silmekti. Benim merak ettiğim şey daha çok öğrendiğim zaman oyun yapmak gibi işlere girişeceğim bu yüzden bir tuşa basıldığında bir iş yapması için herhangi bir komutu nasıl vereceğimi bilmiyorum. CMD'ye pyinstaller keyboard yazdım bir kaynaktan baktım ama orada yazılanlar çalışmadı.
 
While ifadesini klavyeden hesaplanacak cisim ismini aldıktan sonra koyup, hesaplanacak_cisim!="n" şeklinde bir while döngüsü oluşturup deneyebilirsiniz
 
Arkadaşlar merhaba, Python'a 2 hafta önce başladım, 4 işlemi yapan bir hesap makinesı arayüzü tasarımı yapımını hallettim ama numaralı bir şekilde yapmak istiyorum. Yani Windows hesap makinesı gibi. Benim yaptığımda kullanıcıdan veri girmesi isteniyor. Bunun yerine ben 0-9 arası tuşları da koymak isiyorum bunlara fare ıle secip hesap yapmak istiyorum bunu nasıl tanımlarım slotlar ve signallerden mi yapmam gerekiyor bunu. Bu konuyu biraz araştırdım ama su seviyede biraz karısık geldı :D yardımcı olabilirseniz sevinirim.
 

Technopat Haberler

Yeni konular

Geri
Yukarı