Я получаю доступ к данным из разных учетных записей из онлайн-платформы по их API. Я создал класс Account, который содержит всю информацию, необходимую для доступа к этому API. Я хочу иметь возможность устанавливать учетную запись (и необходимую информацию для получения доступа) каждый раз, прежде чем я сделаю запрос API. Я попытался сделать функцию, которая установит глобальную переменную Acct в соответствующий экземпляр класса учетной записи, но после вызова метода select_account() Acct продолжает возвращать '', есть ли лучший способ справиться с этим типом процедуры?Как изменить глобальную переменную в python?
Acct = ''
def choose_account():
global Acct
get = raw_input(r'Adap1, Adap2, Adap3, or Adap4? ')
if get == 'Adap1':
Acct = Adap1
elif get == 'Adap2':
Acct = Adap2
elif get == 'Adap3':
Acct = Adap3
elif get == 'Adap4':
Acct = Adap4
else:
print ("Please type Adap1, Adap2, Adap3, or Adap4 ")
Редактировать: показать счета и т.д. Adap1
class Account():
def __init__(self, name, username, password, org_id):
self.name = name
self.username = username
self.password = password
self.org_id = org_id
def update_pw(self, pw):
self.password = pw
Adap1 = Account('Adap1', 'username', 'password', 'org_id')
где вы устанавливаете Adap1,2,3 и 4? Они выглядят так, будто они пусты от этого кода. – SirParselot
Как вы определяете 'Adap1',' Adap2', 'Adap3',' Adap4'? Сейчас вы рассматриваете их как переменные в своем назначении «Acct = Adap1», но я подозреваю, что вы, возможно, захотели присвоить 'Acct' строке' 'Adap1''? – scrappedcola
Но если это так, вы могли бы просто сделать Acct = get, если войти ('Adap1', ...) else None'. – Kevin