Как сделать циклический запрос на python по двум переменным

У меня есть запрос

body = {
    "method": "AccountManagement",
    "token": token[1],
    "locale": "ru",
    "param": {
        "Action": "Get"
    },
    "SelectionCriteria": {
        "Logins": [
            login[1]
        ]
    }
}

Переменные, которые вставляются в запрос

token = ["токен1", "токен2"]
login = ["логин1", "логин2"]

Функция отправки запроса и получения результата

def yaBalance():
    while True:
        try:
            req = requests.post(config.ReportsURL4, body)
            req.encoding = 'utf-8'  # Принудительная обработка ответа в кодировке "UTF-8"
            if req.status_code == 400:
                info = ("Параметры запроса указаны неверно или достигнут лимит отчетов в очереди")
                break
            elif req.status_code == 200:
                r = req.json()
                info = (r)
                break
        except:
            info = ("Произошла непредвиденная ошибка")
            break
    return info

Получаю результат через запуск функции yaBalance.

Как мне сделать так чтобы получат результат по всем переменным? Чтобы в запрос вставлялся сначала токен1, логин1 -> отправка, получение результата, потом подстановка в запрос токен2, логин2 -> отправка, получение результата и тд.


Ответы (1 шт):

Автор решения: Zhihar

а такое решение не устроит?

def prepareRequest(token, login):
    return {
        "method": "AccountManagement",
        "token": token,
        "locale": "ru",
        "param": {
            "Action": "Get"
        },
        "SelectionCriteria": {
            "Logins": [
                login
            ]
        }
    }

def yaBalance():
    token = ["токен1", "токен2"]
    login = ["логин1", "логин2"]

    for obj in zip(token, login):
        request = prepareRequest(obj[0], obj[1])
        # код с работой сформированного запроса


yaBalance()
→ Ссылка