Python按列表索引和列表字符串打印类

2024-09-29 01:30:56 发布

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

my_list = ["David", "Beckham"]
class User:
 def __init__(self, firstname, lastname):
    self.firstname = firstname
    self.lastname = lastname
my_list[0] = User(my_list[0], my_list[1])

#这些工程

print(my_list[0].firstname)
print(my_list[0].lastname)

我想要的是这个。但它会犯错误。我能来吗

print("David".lastname)
print("David".firstname)

Tags: selfinitmydef工程firstnamelistclass
2条回答

你所要求的是不可能的。但使用字典也可以实现一点相同的效果。这是密码

my_list = ["David", "Beckham"]
class User:
    def __init__(self, firstname, lastname):
        self.firstname = firstname
        self.lastname = lastname
        self.vals={}
        self.vals[self.firstname]=self.lastname
        
    def get(self):
        return self.vals

u = User(my_list[0], my_list[1])
lastname=u.get()
print(lastname["David"])

关于下面的代码。“David”是一个字符串,它没有lastname和first name属性

print("David".lastname)
print("David".firstname)

但您可以创建用户的实例,如:

david = User(my_list[0], my_list[1])
print(david.lastname)
print(david.firstname)

相关问题 更多 >