Piszę kodu kodu, który wielokrotnie dodać nowe zmienne, aż użytkownik nie powie "Nie".

Aktualny kod:

fizzydrinks = [] 
max = 0
while max == 0:
    ask = input("Do you want to add an item to the list?")
    if ask == "Y":
        item = input("Enter your fizzy drink to the List: ")
    elif ask =="N":
        max = max + 1
    fizzydrinks.append(item)
    print (fizzydrinks)

Problem z tym kodem jest to, że po wprowadzeniu ostatecznej zmiennej i powiesz "nie", aby dodać więcej przedmiotów, powtarza ostatni przedmiot, który wprowadziłeś na liście.

Oto wynik:

Enter your fizzy drink to the List: Coke
['Coke']
Do you want to add an item to the list?Y
Enter your fizzy drink to the List: Tango
['Coke', 'Tango']
Do you want to add an item to the list?N
['Coke', 'Tango', 'Tango']
-1
RCN_Overwatcher 21 marzec 2020, 15:40

1 odpowiedź

Najlepsza odpowiedź

Potrzebujesz programu, aby zamknąć pętlę while, gdy tylko użytkownik wchodzi N.

fizzydrinks = [] 

while True:
    ask = input("Do you want to add an item to the list?")
    if ask == "Y":
        item = input("Enter your fizzy drink to the List: ")
    else:
        break
    fizzydrinks.append(item)
    print (fizzydrinks)

Wykorzystuje typową pętlę while True: i {x1}}, gdy tylko stan wyjścia jest spełniony.

0
quamrana 21 marzec 2020, 13:06