哪种方法可以为python类设置默认值?

时间:2020-09-05 22:08:08

标签: python class

这之间有什么区别->

class Battery:
    def __init__(self):
        self.battery = 70
    def batteryInfo(self):
        print(f"This car has {self.battery}mAh battery.")

编辑:如果要更改电池的电量,则可以->

myTesla = Battery()
myTesla.battery = 90

这->

class Battery:
    def __init__(self, battery=70):
        self.battery = battery
    def batteryInfo(self):
        print(f"This car has {self.battery}mAh battery.")

何时使用其中之一?

1 个答案:

答案 0 :(得分:2)

区别在于这种情况:

def __init__(self):
    self.battery = 70

battery的初始值总是 设置为70。如果有人初始化Battery(),则他们不能设置其他值。

在这种情况下:

def __init__(self, battery=70):
    self.battery = battery

如果有人愿意,可以设置其他初始值。 Battery()仍将创建一个初始battery为70的对象,但例如,Battery(420)将使该对象的初始battery为420。

相关问题