Python unendliche Schleife?
Wie kann ich in Python eine unendliche Schleife auf schöne Weise erzeugen?
Bisher mache ich immer das hier (im folgenden Beispiel zu sehen) Leider finde ich sieht das nicht besonders professionell aus, vielleicht kann mir ja jemand einen eleganteren Weg verraten:
while 1==1:
input1 = input("Gib eine Zahl ein(Wenn Stop Leertaste):")
if input1 == "":
break
if input1 != None:
menge_a.add(int(input1))
5 Antworten
Endlose Schleifen macht man für gewöhnlich mit while(true), in Python also:
while True:
...
while braucht wie if eine Bedingung. Diese Bedingung muss immer true oder false zurückgeben. Damit die Schleife funktioniert, muss also true bei rum kommen. 1==1 ist true, weil 1 das selbe ist, wie 1. Dadurch hast du ein true erzeugt. Genauso kannst du auch schreiben 1 < 2, weil 1 kleiner ist als 2, wird es true. Man kann es aber auch einfach zusammenfassen, indem man direkt true rein schreibt. Dein weg ist nicht falsch, aber true wäre die angenehmere Variante
while True:
DeinCodeHier
while True:
Das sollte es sein :)
Schöner ist es bei Schleifen, wenn Abbruchbedingungen entweder im Kopf oder im Fuß stünden.
Ich bin nicht Python bewandert, aber prinzipiell wäre Folgendes ideal.
do
input1 = input(...)
if input1 != None:
menge.add(...)
while input <> ""
PS: Ein paar mal editiert, weil ich beim Scrollen das Original vergessen habe.
Mein Code ist als Pseudocode zu verstehen, da Python, wie ich geschrieben habe, nicht mein Metier ist.
!= hat sich in allen C-Derivaten durchgesetzt.
VB, SQL, PHP, Delphi,... funktionieren alle noch mit <>.
Also in SQL und PHP kenne ich auch nur !=. Aber tatsächlich gibt es da auch noch <>, wusste ich nicht, cool zu wissen.
Aber scheint wohl etwas veraltet zu sein, wenn ich mir anschaue, welche Sprachen <> benutzen und welche != benutzen. Hab das heut zum ersten mal gesehen. Man lernt nie aus :D
while True:
...
<> ?
Du hast deinen Code wohl von irgendeiner 20 Jahre alten Seite. Heutzutage gibt es für Ungleichheit nurnoch
!=