döngü

Durum
Bu konu kilitlenmiştir.

cansu.u

80+
Katılım
16 Aralık 2022
Mesajlar
9
Reaksiyon skoru
0
Python while döngüsünden çıkmıyor. Nasıl çıkabilirim? Kod şu şekilde:



class istek:
def __init__(self,a={},deger={}):
self.a=a
self.deger=deger

def ekle(self):
liste=[]
while True:
self.a= input("hangi ozellik eklemek istersiniz:( eklemek istemiyorsanız 0 tuslayiniz)")
self.deger= input("degeri giriniz")
liste.extend([self.a,self.deger])
if self.a== 0:break



i1=istek()
i1.ekle()
print("urun bilgileri")
print(liste)

Alıntıyı görüntüle
 
Python while döngüsünden çıkmıyor. Nasıl çıkabilirim? Kod şu şekilde:



class istek:
def __init__(self,a={},deger={}):
self.a=a
self.deger=deger

def ekle(self):
liste=[]
while True:
self.a= input("hangi ozellik eklemek istersiniz:( eklemek istemiyorsanız 0 tuslayiniz)")
self.deger= input("degeri giriniz")
liste.extend([self.a,self.deger])
if self.a== 0:break



i1=istek()
i1.ekle()
print("urun bilgileri")
print(liste)

Alıntıyı görüntüle
programın ismi ne
 
Python while döngüsünden çıkmıyor. Nasıl çıkabilirim? Kod şu şekilde:



class istek:
def __init__(self,a={},deger={}):
self.a=a
self.deger=deger

def ekle(self):
liste=[]
while True:
self.a= input("hangi ozellik eklemek istersiniz:( eklemek istemiyorsanız 0 tuslayiniz)")
self.deger= input("degeri giriniz")
liste.extend([self.a,self.deger])
if self.a== 0:break



i1=istek()
i1.ekle()
print("urun bilgileri")
print(liste)

Alıntıyı görüntüle
Python'ı neredeyse hiç hatırlamıyorum ama breakpoint koyup kendi hata kontrolünü yapabilirsin.
Örnek VS Code dokumanında:
 
While a şart koymak bana daha pratik geliyor. Şart koyup ifin altinda tekrar yazsana bir.
Mesela sey gibi while x = true falan filan, asagida da ifin icinde x = false yap. Yukarda bool diye tanimlarsin
 
Python while döngüsünden çıkmıyor. Nasıl çıkabilirim? Kod şu şekilde:



class istek:
def __init__(self,a={},deger={}):
self.a=a
self.deger=deger

def ekle(self):
liste=[]
while True:
self.a= input("hangi ozellik eklemek istersiniz:( eklemek istemiyorsanız 0 tuslayiniz)")
self.deger= input("degeri giriniz")
liste.extend([self.a,self.deger])
if self.a== 0:break



i1=istek()
i1.ekle()
print("urun bilgileri")
print(liste)

Alıntıyı görüntüle
inputtan gelen değer hiçbir zaman 0 olamaz. String tipinde bir değer döneceği için "0" olabilir.
if self.a == "0": break

şeklinde değiştirirseniz düzelir.
 
programın ismi ne


online derleyici
Mesajlar otomatik olarak birleştirildi:

inputtan gelen değer hiçbir zaman 0 olamaz. String tipinde bir değer döneceği için "0" olabilir.
if self.a == "0": break

şeklinde değiştirirseniz düzelir.
teşekkürler denedim ama olmuyor hem a yı hem de deger i 0 girince duruyor döngü. Bunu neye göre yapıyor anlamadım
 
Python ı hatırlamıyorum ama şu aklıma takıldı İnputla aldığı değeri string olarak mı tutuyor integer olarak mı? 0==0 bu veri tipi olarak her zaman birbirine eşit olmayabilir. if de veri tipine dikkat ederek kıyaslama yapmaya çalış.
 
online derleyici
Mesajlar otomatik olarak birleştirildi:


teşekkürler denedim ama olmuyor hem a yı hem de deger i 0 girince duruyor döngü. Bunu neye göre yapıyor anlamadım
Çalışıyor test ettim a yı 0 girdikten sonra değere istediğinizi girebilirsiniz program if koşuluna girdikten sonra duracaktır.
En alttaki print(liste) kodunu da kaldırın liste tanımlı olmadığı için döngüden çıkınca hata verecektir.


Python:
class istek:
    def __init__(self,a={},deger={}):
        self.a=a
        self.deger=deger

    def ekle(self):
        liste=[]
        while True:
            self.a= input("hangi ozellik eklemek istersiniz:( eklemek istemiyorsanız 0 tuslayiniz)")
            self.deger= input("degeri giriniz")
            liste.extend([self.a,self.deger])
            if self.a== "0":break



i1=istek()
i1.ekle()
print("urun bilgileri")
 
Son düzenleme:
While a şart koymak bana daha pratik geliyor. Şart koyup ifin altinda tekrar yazsana bir.
Mesela sey gibi while x = true falan filan, asagida da ifin icinde x = false yap. Yukarda bool diye tanimlarsin
Olmadı. Demek istediğinizi kodda gösterebilirseniz çok iyi olur
Mesajlar otomatik olarak birleştirildi:

Çalışıyor test ettim a yı 0 girdikten sonra değere istediğinizi girebilirsiniz program if koşuluna girdikten sonra duracaktır.
En alttaki print(liste) kodunu da kaldırın liste tanımlı olmadığı için döngüden çıkınca hata verecektir.


C#:
class istek:
    def __init__(self,a={},deger={}):
        self.a=a
        self.deger=deger

    def ekle(self):
        liste=[]
        while True:
            self.a= input("hangi ozellik eklemek istersiniz:( eklemek istemiyorsanız 0 tuslayiniz)")
            self.deger= input("degeri giriniz")
            liste.extend([self.a,self.deger])
            if self.a== "0":break



i1=istek()
i1.ekle()
print("urun bilgileri")
Anladım teşekkürler. Peki a 0 girildiğinde direkt durması için ne yapmalıyım?
Mesajlar otomatik olarak birleştirildi:

Python ı hatırlamıyorum ama şu aklıma takıldı İnputla aldığı değeri string olarak mı tutuyor integer olarak mı? 0==0 bu veri tipi olarak her zaman birbirine eşit olmayabilir. if de veri tipine dikkat ederek kıyaslama yapmaya çalış.
o fark etmiyor yani int veya str diye herhangi bir tanımlama yapmama rağmen metin giriyorum veya sayı. Çalışıyor şu an hallettik
 
Son düzenleme:
Durum
Bu konu kilitlenmiştir.
Geri
Top