def info(): print('\nИнформация(info)\nНазвание: console+\nАвтор кода: Xakep321\n') def help(): print('\nhelp\t-\tсписок комманд\ncalc2\t-\tкалькулятор с двумя переменными\nсalc3\t-\tкалькулятор с тремя переменными\ncompar\t-\tсравнение чисел\nexit + (название приложения)\t-\tвыход из среды\ninfo\t-\tинформация\n') def console(): while True: enter=str(input('console > ')) if enter=='help': help() elif enter=='exit console': print('close console') print(exit(0)) elif enter=='calc2': cacl2() elif enter=='calc3': calc3() elif enter=='info': info() elif enter=='compar': compar() else: print('Неверная команда') def cacl2(): print('\n\tКалькулятор с двумя переменными(calc1)') while True: a=input('Первая переменная: ') if a=='exit calc2': print('close calc2') a=str(a) console() break else: a=float(a) b=input('Операция: ') if b=='exit calc2': print('close calc2') console() break c=input('Вторая переменная: ') if c=='exit calc2': print('close calc2') c=str(c) console() break else: c=float(c) if b in ('+','-','*','/','**','//'): if b=='+': print(a,b,c,'=',a+c) elif b=='-': print(a,b,c,'=',a-c) elif b=='*': print(a,b,c,'=',a*c) elif b=='/': print(a,b,c,'=',a/c) elif b=='**': print(a,b,c,'=',a**c) elif b=='//': print(a,b,c,'=',a//c) else: print('Неверная операция') def calc3(): print('\n\tКалькулятор с тремя переменными(calc3)') while True: a=input('Первая переменная: ') if a=='exit calc3': print('close calc3') a=str(a) console() break else: a=float(a) b=input('Операция: ') if b=='exit calc3': print('close calc3') console() break c=input('Вторая переменная: ') if c=='exit calc3': print('close calc3') c=str(c) console() break else: c=float(c) d=input('Операция: ') if d=='exit calc3': print('close calc3') console() break e=input('Третья переменная: ') if e=='exit calc3': print('close calc3') e=str(e) console() break else: e=float(e) if b in ('+','-','*','/','**','//') and d in ('+','-','*','/','**','//'): if b=='+': if d=='+': print(a,b,c,d,e,'=',a+c+e) elif d=='-': print(a,b,c,d,e,'=',a+c-e) elif d=='*': print(a,b,c,d,e,'=',a+c*e) elif d=='/': print(a,b,c,d,e,'=',a+c/e) elif d=='**': print(a,b,c,d,e,'=',a+c**e) elif d=='//': print(a,b,c,d,e,'=',a+c//e) else: print('Неверная операция') elif b=='-': if d=='+': print(a,b,c,d,e,'=',a-c+e) elif d=='-': print(a,b,c,d,e,'=',a-c-e) elif d=='*': print(a,b,c,d,e,'=',a-c*e) elif d=='/': print(a,b,c,d,e,'=',a-c/d) elif d=='**': print(a,b,c,d,e,'=',a-c**e) elif d=='//': print(a,b,c,d,e,'=',a-c//e) else: print('Неверная операция') elif b=='*': if d=='+': print(a,b,c,d,e,'=',a*c+e) elif d=='-': print(a,b,c,d,e,'=',a*c-e) elif d=='*': print(a,b,c,d,e,'=',a*c*e) elif d=='/': print(a,b,c,d,e,'=',a*c/e) elif d=='**': print(a,b,c,d,e,'=',a*c**e) elif d=='//': print(a,b,c,d,e,'=',a*c//e) else: print('Неверная операция') elif b=='/': if d=='+': print(a,b,c,d,e,'=',a/c+e) elif d=='-': print(a,b,c,d,e,'=',a/c-e) elif d=='*': print(a,b,c,d,e,'=',a/c*e) elif d=='/': print(a,b,c,d,e,'=',a/c/e) elif d=='**': print(a,b,c,d,e,'=',a/c**e) elif d=='//': print(a,b,c,d,e,'=',a/c//e) else: print('Неверная операция') elif b=='**': if d=='+': print(a,b,c,d,e,'=',a**c+e) elif d=='-': print(a,b,c,d,e,'=',a**c-e) elif d=='*': print(a,b,c,d,e,'=',a**c*e) elif d=='/': print(a,b,c,d,e,'=',a**c/e) elif d=='**': print(a,b,c,d,e,'=',a**c**e) elif d=='//': print(a,b,c,d,e,'=',a**c//e) else: print('Неверная операция') elif b=='//': if d=='+': print(a,b,c,d,e,'=',a//c+e) elif d=='-': print(a,b,c,d,e,'=',a//c-e) elif d=='*': print(a,b,c,d,e,'=',a//c*e) elif d=='/': print(a,b,c,d,e,'=',a//c/e) elif d=='**': print(a,b,c,d,e,'=',a//c**e) elif d=='//': print(a,b,c,d,e,'=',a//c//e) else: print('Неверная операция') else: print('Неверная операция') def compar(): print('Сравнение числа(ел)(compar)') while True: a=input('Первая переменная: ') if a=='exit compar': print('close compar') a=str(a) console() break else: a=float(a) b=input('Вторая переменная или пробел: ') if b=='exit compar': print('close compar') b=str(b) console() break else: if b!=' ': if b!='': b=float(b) if a>0: print(a,'> 0') elif a<0: print('0 >',a) if b!=' ': if b!='': if a>b: print(a,'>',b) elif a<b: print(a,'<',b) elif a==b: print(a,'=',b) if b>0: print(b,'> 0') elif b<0: print('0 >',b) open=str(input('console > ')) if open=='open': console() elif open=='exit console': print('close console') print(exit(0)) else: print('Неверная команда')
Ввот тот самый код который я переделал с помощью ваших советов. Оцените переделку, код построен на вызове функций, а не на, как было, бесконечной функции. И убрал кучу копипасты, код более радует глаз
Python 3.6.4/Теперь пишу в Sublime