@Johnem

Как оптимизировать код из многочисленных элементов принадлежащих одной переменной?

Как можно оптимизировать такой код:
security_paper = input("Введите тип инструмента (Акция, ПАЙ, ОФЗ, Корпоративная облигация): ")
            if security_paper == ("Акция"):
                boardit = ("TQBR")
            elif security_paper == ("ПАЙ"):
                boardit = ("TQTF")
            elif security_paper == ("ОФЗ"):
                boardit = ("TQOB")
            elif  security_paper ==  ("Корпоративная облигация"):
                boardit = ("EQOB")
            else:
                print("Вы ввели неправильный тип бумаги")
            ticker = input("Введите тикер: ")
            information_type = input("Какую информацию вы хотите получить: ")
            if information_type == ("Последняя цена"):
                information_code = ("marketdata&marketdata.columns=LAST")
            elif information_type == ("Короткое имя"):
                information_code = ("securities&securities.columns=SHORTNAME")
            else:
                print("Данной информации нет")

В том смысле что значений information_tipe очень много (около 30) и писать их через elif громоздко, можно ли укоротить эту манипуляцию?
  • Вопрос задан
  • 48 просмотров
Решения вопроса 1
@bbkmzzzz
Использовать словарь, например.
security_papers = {
  "акция": "1",
  "пай": "2",
  "офз": "3",
  "корпоративная облигация": "4"
  }
user_input = str(input("Введите тип инструмента (Акция, ПАЙ, ОФЗ, Корпоративная облигация)"))
if user_input.lower() in security_papers:
  print(security_papers[user_input])
else:
  print('incorrect input')


Оборачивайте код в тег code
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы