【发布时间】:2020-07-02 10:31:30
【问题描述】:
我想在不带参数的构造函数中用默认值初始化变量,像这样:
class Persons()
def __init__(self):
self.name="Joan"
p1=Persons()
print(p1.name)
因此,结果将是“琼”。它将打印此人的姓名。都好。但是如何为多个对象执行此操作?我想用不同的名字打印p2.name、p3.name,就像上面一样。
我从一个要求我“创建一个没有参数的构造函数,用默认数据初始化变量”的练习中得到这个。
【问题讨论】:
-
“我想打印 p2.name , p3.name, 用不同的名字” - 如果你想让所有对象都使用默认值,那么它们都将具有相同的名称。
-
您可以从一个列表中随机选择:
self.name = random.choice(["Joan", "Alice", "Bob", ...],但不能保证(即使创建的对象多于可用名称的情况)每个实例都会有一个唯一的名称。 -
练习中是否真的说实例变量每次需要不同的初始化?
标签: python class oop object constructor