Python 循环以创建动态变量

Python 循环以创建动态变量,python,Python,我有以下代码: if opt1 is not None: user_a, db_a = opt1.split("/") db_a = country_assoc(int(db_a)) client_a = Client(None, user_a, db_a) data_client_a = client_a.get_user() if opt2 is not None: user_b, db_b

我有以下代码:

    if opt1 is not None:
        user_a, db_a = opt1.split("/") 
        db_a = country_assoc(int(db_a))
        client_a = Client(None, user_a, db_a)
        data_client_a = client_a.get_user() 

    if opt2 is not None:
        user_b, db_b = opt2.split("/")  
        db_b = country_assoc(int(db_b))
        client_b = Client(None, user_b, db_b)
        data_client_b = client_b.get_user() 

    ....
但是,我想用一个循环生成一个类似的结构

正确的方法是什么?我正在尝试这个

    abcde = ['a', 'b', 'c', 'd', 'e']
    for idx, val in enumerate(abcde):
        if opt+idx is not None:
            user_+val, db_+val = opt+idx.split("/") 
            db_+val = country_assoc(int(db_+val))
            client_+val = Client(None, user_+val, db_+val)
            data_client_+val = client_+val.get_user() 

我不明白为什么人们觉得有必要尝试做这种事情。变量名不是数据。动态创建变量名从来都不是一个好的理由

只需将您的值放入字典或列表中

for idx, val in enumerate(abcde):
    if opts[idx] is not None:
        user, db = opts[idx].split("/")
        users[val] = user
        dbs[val] = country_assoc(int(db))
        clients[val] = Client(None, user, db)
        data_clients.append(clients[val].get_user())

我不明白为什么人们觉得有必要尝试做这种事情。变量名不是数据。动态创建变量名从来都不是一个好的理由

只需将您的值放入字典或列表中

for idx, val in enumerate(abcde):
    if opts[idx] is not None:
        user, db = opts[idx].split("/")
        users[val] = user
        dbs[val] = country_assoc(int(db))
        clients[val] = Client(None, user, db)
        data_clients.append(clients[val].get_user())