Ошибка unexpected unindent, хотя табуляция правильная

k0ffeeK

Новичок
Пользователь
Май 14, 2020
2
0
1
OC: Windows
Python: 3.8
Библиотеки:
Screenshot_11.png

Код:
  Текст ошибки:
 
 
  File "c:\Users\Андрей\Desktop\Web\Scripting\Python\Date and time.py", line 71
    while menu == 2:
    ^
IndentationError: unexpected unindent
PS C:\Users\Андрей\Desktop\Web\Scripting\Python>

Python:
from datetime import date
from prettytable import PrettyTable

key = 0
menu = 0

products = []  # Список продуктов и их сроков годности

today = str(date.today())  # Обозначение сегодняшней даты

while True:
    
    try:
        search = products.index(today)  # Поиск сегодняшней даты
        
        if (search > 0):
            rint("У продукта", products[search - 1], "закончился срок годности")
            del products[search - 1]
            del products[search - 1]
            print(products)
            search = 0
            
    except ValueError:       
        continue
    
    
    while menu == 0:  #Основное меню
        key = 0

        print("Выберите элемент из списка (введите его номер):")
        print("1.Ввести новый продукт")
        print("2.Посмотреть список продуктов")

        choose = str(input())

        if(choose == "1"):
            menu = 1
            

        if(choose == '2'):
            menu = 2

        if(choose != "1") and (choose != "2"):
            print("Введено неверное число")



    while True:  #Ввод новых элементов
        try:
            while key == 0:
                products.append(str(input("Введите название продукта: ")))
                key = 1
            
            while key == 1:
                products.append(str(input("Введите дату в виде ГОД-МЕСЯЦ-ДЕНЬ (Например 2020-02-20): ")))
                key = 2

            while key == 2:
                choice = input("Вы хотите ввести ещё один продукт (да/нет)? ")

                if(choice == "Да") or (choice == "да"):
                    key == 0

                if(choice == "Нет") or (choice == "нет"):
                    menu = 0
                    break

                else:
                    print("Введено неверная команда")
    
    while menu == 2:
        lenght = len(products)
        
        for i in range(0, lenght):
            table = PrettyTable(["Продукт", "Дата окончания срока годности"])
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Это потому что вы после try не написали except или finally, а сразу следующий while с другим отступом.
 

k0ffeeK

Новичок
Пользователь
Май 14, 2020
2
0
1
Это потому что вы после try не написали except или finally, а сразу следующий while с другим отступом.
Так он же там есть
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Так он же там есть
После этого try:
Python:
 while True:  #Ввод новых элементов
        try:
            ...
 

Форум IT Специалистов