Уже второй день изучаю Python. И, т.к. это мой первый язык, то я много не знаю вовсе и не догадываюсь о существовании даже. Поэтому прошу вашей помощи, если есть время, силы и желание поделиться мудростью.
Помощь нужна в следующем: нужно упростить код. Повторюсь, я не в Python-е новичок, а совсем зелененький в этом, как оказалось интересном деле. Поэтому я обдумаю все, что напишите и предложите. Зарание спасибо!
Назначение программы не столь важно ибо я все в качестве тренировки делаю и усвоения того, что нашел на просторах интернета.
Код такой:
#!/usr/bin/env python3 #Программа позволит узнать какой месяц соответствует введенному числу и еще немного #-------Создаем словари для программ------------ months = {1:'Январь', 2:'Февраль', 3:'Март', 4:'Апрель', 5:'Май', 6:'Июнь', 7:'Июль', 8:'Август', 9:'Сентябрь', 10:'Октябрь', 11:'Ноябрь', 12:'Декабрь'} day = {1:'31', 2:'28', 3:'31', 4:'30', 5:'31', 6:'30', 7:'31', 8:'31', 9:'30', 10:'31', 11:'30', 12:'31'} #------Создаем словари для аунтификации--------- users = {'Brick':'Brick'} passwords = {'123':'123'} #-----------------Меню входа-------------------- print() print("+----------------+") print("| 1. Вход |") print("| 2. Регистрация |") print("| 0. Выйти |") print("+----------------+") print() #------------------Код меню--------------------- q = 1 while q == 1: v = int(input("Введите номер пункта меню ")) if v == 1: # Первый пункт меню print() q = 0 # Переходим к коду аунтификации elif v == 2: # Второй пункт меню print("Регистрация нового пользователя") print() w = 1 while w == 1: usr = input("Придумайте имя пользователя?" ) # Проверим, есть ли такой позователь в словаре users if usr in users: # Если есть - выведем это print("Имя пользователя занято" ) w = 0 # вернемся обратно else: # Добавим имя его в словарь в словарь users users[usr] = usr psw = input("Придумайте пароль" ) # введем пароль и заведем его в словарь passwords passwords[psw] = psw w = 0 # Вернемя обратно с сохраненными именем пользователя и паролем elif v == 0: # Третий пункт меню print() print('Программа завершена') raise SystemExit(1) # Программа будет завершена else: # Выведет ошибку и вернет к вводу пункта меню print() print('Нет такого пункта') print() #----------Требование ввести логин и пароль------------------ psw = 1 while psw == 1: usrname = input('Введите имя пользователя => ') pwd = input('Введите пароль => ') #-----------------Проверка имени и пароля--------------------- if usrname in users: if pwd == passwords[pwd]: print ('Здравствуйте, %s. Вход выполнен.' % usrname) psw = 0 else: print ('Пароль неверный. Вход не выполнен.') else: print ("Извините, но такого пользователя нет. Вход не выполнен.") #----------------------Меню программы-------------------------- loop = 1 while loop == 1: print() print("+--------------------------------------------------------+") print("| 1. Узнать название месяца по его порядковому номеру |") print("| 2. Узнать сколько в конкретном месяце дней |") print("| 3. Узнать номер месяца по названию |") print("| 0. Выйти |") print("+--------------------------------------------------------+") print() b = int(input("Введите номер пункта меню ")) print() #-------Программа №1---------------------- if b == 1: z = 1 while z == 1: response = int(input("Введите номер месяца или '0' для выхода в меню => ")) if response in months: print() print(response, "месяц - это", months[response]) print() a = input("Вы хотите продолжить? y/n ") print() if a == 'n': print() z = 0 elif response == 0: z = 0 else: print() print('Нет такого месяца') print() #-------Программа №2---------------------- if b == 2: d = 1 while d == 1: response = int(input("Введите номер месяца или '0' для выхода в меню => ")) if response in day: print() print("В", months[response],"е", day[response], "дней") print() a = input("Вы хотите продолжить? y/n ") print() if a == 'n': print() d = 0 elif response == 0: d = 0 else: print() print('Нет такого месяца') print() #-------Программа №3----------------------НЕ ДОДЕЛАНА if b == 3: c = 1 while c == 1: print("Данная часть программы не дописана") print() a = input("Вы хотите продолжить? y/n ") print() if a == 'n': print() c = 0 #----------------------------------------- elif b == 0: print() print('Программа завершена') loop = 0 else: print() print('Нет такого пункта') print()