n1 = input("Скажите что нибудь: ")
n2= input("Здравствуйте, это SCUB - Special Custom Unified Bot. Скажите 'help' чтобы посмотреть полный список команд: ")
if n1 == True:
print (n2)
while n2 != '':
if n2 == 'calc +':
print("Калькулятор на сложение")
num_1 = int(input("1-е число: "))
num_2 = int(input("2-е число: "))
res = num_1 + num_2
print("Результат:", res)
n2 = input("Введите команду: ")
if n2 == 'calc -':
print("Калькулятор на вычитание")
num_11 = int(input("1-е число: "))
num_22 = int(input("2-е число: "))
res = num_11 - num_22
print("Результат:", res)
n2 = input("Введите команду: ")
if n2 == 'calc *':
print("Калькулятор на умножение")
num_111 = int(input("1-е число: "))
num_222 = int(input("2-е число: "))
res = num_111 * num_222
print("Результат:", res)
n2 = input("Введите команду: ")
elif n2 == 'calc /':
print("Калькулятор на деление")
num_1111 = int(input("1-е число: "))
num_2222 = int(input("2-е число: "))
res = num_1111 / num_2222
print("Результат:", res)
n2 = input("Введите команду: ")
elif n2 == 'help':
print("Полный список команд доступных в SCUB v0.1:")
print("help")
print("calc +,-,*,/)")
n2 = input("Введите команду: ")
else:
print('Такой команды нет, попробуйте еще раз')
n2 = input("Введите команду: ")
if/elif n2 == 'команда':
код
# и в конце:
n2 = input("Введите команду: ")
P.S Проект создаётся новичком поэтому я буду рад адекватной критике и советам по улучшению кода.
# ': str' - это type hint. На выполнение не влияет, оно в первую очередь для читаемости. Можешь пока пропустить.
def command_plus(args: str): # функция получает аргумент как строку, вместо вызова input().
"Складывает указанные числа." # doc-string содержит человекочитаемое описание функции
print("Калькулятор на сложение")
parts = [int(part) for part in args.split()] # операции со строками, list comprehensions
if not parts: # какие значения в питоне истинные (truey), какие ложные (falsy)?
parts.append(int(input("1-е число: ")))
parts.append(int(input("2-е число: ")))
res = sum(parts)
print(f"Результат: {res}") # f-строки
# словарь, содержащий имя команды и её функцию
commands = {
'calc +': command_plus,
# тут будут другие команды
}
while True:
cmd = input('Введите команду: ') # например, "calc + 2 3 5"
for cmd_name, cmd_func in commands.items(): # цикл for, операции со словарями
if cmd.startswith(cmd_name): # операции со строками
cmd = cmd[len(cmd_name):] # срезы (slice)
try: # обработка исключений
cmd_func(cmd)
except Exception as err:
print(f"Произошла ошибка: {err}")
break # операторы передачи управления
else: # Как работает оператор else: совместно с циклами?
if cmd == 'exit':
print('До свиданья')
break # прерываем while
else:
print(f"Неизвестная команда: {cmd}")