swanseabrian 发表于 2022-2-24 21:05:07

请问python同时创建多个对象 并给对象里面的三个属性 赋值

请问python同时创建多个对象 并给对象里面的三个属性 赋值

suchocolate 发表于 2022-2-24 21:18:31

a,b,c = A(1,2,3), B(1,2,3), C(1,2,3)

大马强 发表于 2022-2-24 21:20:46

这样吗?

class A:
    def __init__(self, name):
      self.name = name


name_list = ["大马强", "小甲鱼", "大甲鱼"]
class_list = []
for name in name_list:
    class_list.append(A(name))
for A_name in class_list:
    print(A_name.name)

swanseabrian 发表于 2022-2-24 21:29:14

大马强 发表于 2022-2-24 21:20
这样吗?

你这个不是列表吗

swanseabrian 发表于 2022-2-24 21:31:48

suchocolate 发表于 2022-2-24 21:18
a,b,c = A(1,2,3), B(1,2,3), C(1,2,3)

属性值 不一样有办法吗

大马强 发表于 2022-2-24 21:35:02

swanseabrian 发表于 2022-2-24 21:29
你这个不是列表吗

但是列表元素是一个个类呀
用的时候你在调用元素呗

大马强 发表于 2022-2-24 21:39:20

我想了一下你的问题
你说要同时创建,我的理解是一段代码将其全部初始化
就如第二个大佬的方法

但你的三个属性又要符不同的值{:10_245:},我感觉这个实现不了

傻眼貓咪 发表于 2022-2-24 22:03:15

不是很明白你要的,希望代码对你有帮助:class MyClass:
    def __init__(self, a = None):
      self.a = a

A, B, C, D = MyClass(87), MyClass("小甲鱼"), MyClass(True), MyClass(13.45)

print(A.a) # 整数
print(B.a) # 字符串
print(C.a) # 布尔值
print(D.a) # 浮点数

suchocolate 发表于 2022-2-24 23:08:03

swanseabrian 发表于 2022-2-24 21:31
属性值 不一样有办法吗

可以。但要看具体需求。
页: [1]
查看完整版本: 请问python同时创建多个对象 并给对象里面的三个属性 赋值