创建动态对象python

2024-04-27 03:31:03 发布

您现在位置:Python中文网/ 问答频道 /正文

为了训练,我想在使用类的系统中自动创建用户。

这是我的代码:

class CsrUser(object):
    def __init__(self, f_name, l_name, login, role, sex, password ='Hot12345'):
        self.f_name = f_name
        self.l_name = l_name
        self.login = login
        self.role = role
        self.sex = sex
        self.password = password

我想从用户输入创建类的动态对象

#i want to create something like this
def get_users_data():
    new_user = input("Enter the user name")
    ... #get all the data
    new_user = CsrUser(...)

我希望对象的名称是新用户内部的值


Tags: the对象用户nameselfnewdataget
1条回答
网友
1楼 · 发布于 2024-04-27 03:31:03

我不认为用变量命名变量(在你的例子中是对象)是个好主意。如果要按名称跟踪所有用户,则应改用字典:

#make dictionary
user_data = {}

#make a new user object
new_user = CsrUser(...)

#insert your new user object into the dictionary
#use new_user.f_name or new_user.l_name here in place of new_user.name (or combine both)
user_data[new_user.name] = new_user  

#to get a user object out of the dictionary 
a_user = user_data["name_here"]

相关问题 更多 >