def get_price(quote: str, base: str, amount: str): if quote == base: raise ConvertionException(f'Невозможно конвертировать одну и ту же валюту {base}') if quote not in keys.keys(): raise ConvertionException(f'Неверный ввод {quote}') elif base not in keys.keys(): raise ConvertionException(f'Неверный ввод {base}') try: quote_ticker = keys[quote] except KeyError: raise ConvertionException(f'Не удалось обработать валюту {quote}') try: base_ticker = keys[base] except KeyError: raise ConvertionException(f'Не удалось обработать валюту {base}') try: amount = float(amount) if amount < 3: raise ConvertionException('Неправильно указаны параметры запроса.') except ValueError: raise ConvertionException(f'Не удалось обработать кол-во {amount}') r = requests.get(f'https://min-api.cryptocompare.com/data/price?fsym={quote_ticker}&tsyms={base_ticker}') total_base = json.loads(r.content)[keys[base]] total_base = total_base * amount return total_base
def convert(cur: str, base: str, amount: str): if cur.lower() == base.lower(): raise APIException(f"Введены две одинаковые валюты {cur.lower()}") if cur.lower() not in keys.keys(): raise APIException(f"Невозможно обработать валюту {cur.lower()}") if base.lower() not in keys.keys(): raise APIException(f"Невозможно обработать валюту {base.lower()}") try: amount = float(amount) except ValueError: raise APIException("Ошибка в количестве валюты") r = requests.get( f"https://api.coingate.com/v2/rates/merchant/{keys[cur.lower()]}/{keys[base.lower()]}" ) return r.content
def values(message: telebot.types.Message): text = 'Доступные валюты:' for key in keys.keys(): text = '\n'.join((text, key)) bot.reply_to(message, text)
def values_help(message: telebot.types.Message): text = "Доступные валюты:" for key in keys.keys(): text = "\n".join(( text, key, )) bot.send_message(message.chat.id, text, reply_markup=reply_markup)
def values1(message: telebot.types.Message): text = 'Доступные для конвертации валюты: ' for key in keys.keys(): text = '\n'.join(( text, key, )) bot.reply_to(message, text)
def currency_list(message): text = 'Available currencies:' for key in keys.keys(): text = '\n'.join(( text, key, )) bot.reply_to(message, text)
def values(message: telebot.types.Message): text = 'Available currencies:' for key in keys.keys(): text = '\n'.join(( text, key, )) bot.reply_to(message, text)
def start(message: telebot.types.Message): text = 'Доступные валюты:\n\n' text += '\n'.join(f"{i+1}. {key}" for i, key in enumerate(keys.keys())) bot.reply_to(message, text)
def values(message): text = "Доступные валюты:" for key in keys.keys(): text = '\n'.join((text, key)) bot.reply_to(message, text)
def values(message: telebot.types.Message): text = "Доступные валюты:\n" for key in keys.keys(): text += key + '\n' bot.send_message(message.chat.id, text)
def values(message: telebot.types.Message): text = 'Доступные валюты:' for key in keys.keys(): text = '\n'.join((text, key, )) # bot.reply_to(message, text) bot.send_message(message.chat.id, text)
def start_help(message: telebot.types.Message): text = 'Доступные: \n' for key in keys.keys(): text = text + str(key) + '\n' bot.reply_to(message, text)
def help(message: telebot.types.Message): text = 'Доступные валюты:' for key in keys.keys(): text = '\n'.join((text, key)) bot.send_message(message.chat.id, text)
def instruction(message: telebot.types.Message): text = 'Доступные валюты: ' for key in keys.keys(): text = '\n'.join((text, key, )) bot.reply_to(message, text)
def values_bot(message: telebot.types.Message): text = 'Доступные валюты:' for key in list(keys.keys())[::2]: text = '\n'.join((text, key, )) bot.send_message(message.chat.id, text)