Два разных экземпляра объекта печатают один и тот же результат первого экземпляра
У меня такой код:
from iqoptionapi.stable_api import IQ_Option
def fun(mail, password):
acc = IQ_Option(mail, password)
acc.connect()
return acc.get_balance()
acc.api.close()
account_one_balance = fun("testioption837@gmail.com", "Pituo67")
account_two_balance = fun("shaggggycaba@gmail.com", "1q2we4r5t6y7u8i9o0p")
print(account_one_balance, account_two_balance)
Баланс первого
счета - 10036 Баланс второго счета - 10000
Но что такое принты:
10036
10036
Я не могу понять, почему это происходит.
1 ответ
Что-нибудь после return
строка в функции не будет запущена, что означает, что ваше соединение API не закрывается.
Поведение в этом случае будет зависеть от того, как разработан API, но, скорее всего, второе соединение просто не открывается, а первое сохраняется. Поэтому баланс из первой функции получается дважды.
Попробуйте сделать это вместо этого:
acc.connect()
balance = acc.get_balance()
acc.api.close()
return balance