Как передать параметр в строке в python с помощью формата

Есть url ссылка, которая находится в файле settings.py :

KAVENEGAR_URL = "https://api.kavenegar.com/v1/{key}/verify/lookup.json?receptor={phone}&token={otp}".format(key,phone,otp)

Я хочу использовать его в файле service.py внутри метода send_otp_sms. Я не знаю, как передать в него переменные key, phone, otp

from django.conf import settings

def send_otp_sms(key, phone, otp):
    kavenegar_url = settings.KAVENEGAR_URL.format({key}, {phone}, {otp})
    response = requests.post(kavenegar_url)
    if response.status_code != 200:
        raise APICallError
    return response

Я использовал .format, как вы видите в кодах, но он передает ошибку в settings.py, которая Нерешенная ссылка 'key' Неразрешенная ссылка 'phone' Неразрешенная ссылка 'otp'

Tente Isso:

from django.conf import settings

def send_otp_sms(key, phone, otp):
  kavenegar_url = f"https://api.kavenegar.com/v1/{key}/verify/lookup.json?receptor={phone}&token={otp}"
  response = requests.post(kavenegar_url)
  if response.status_code != 200:
    raise APICallError
  return response

Проблема в том, что когда я использую параметры в строке следующим образом :

KAVENEGAR_URL = "https://api.kavenegar.com/v1/{key}/verify/lookup.json?receptor={phone}&token={otp}"

Мне приходится использовать .format следующим образом :

.format(key=key, phone=phone, otp=otp)

и если я использую пустые скобки вот так :

KAVENEGAR_URL = "https://api.kavenegar.com/v1/{}/verify/lookup.json?receptor={}&token={}"

Мне приходится использовать .format следующим образом :

.format(key, phone, otp)

Вернуться на верх