python - __init__ 括号里的东西叫什么?

标签 python python-3.x initialization

init中括号里的东西叫什么。

class Mother:

    def __init__ (self, strName = "Maya", strAddress = "717 Lynx Street"):
        self.name = strName
        self.address = strAddress

    def play(self):
        print("Playing games.")

    def __str__ (self):
        return self.name + " at " + self.address + " "

class Son(Mother):
    pass

mySon = Son()
mySon.name = "Jeff"
mySon.play()

print(mySon)

strName =“Maya”和 strAddress =“717 Lynx Street”是什么?他们叫什么?谢谢。

最佳答案

它们是方法__init__的参数。如果在参数名称后使用 = 指定值,则该值将成为该参数的默认值。

一些例子

>>> m1 = Mother("Juliana", "123 Apple Street")
>>> m2 = Mother("Francisca")
>>> m3 = Mother()
>>> m1.strName
'Jualiana'
>>> m1.strAddress
'123 Apple Street'
>>> m2.strName
'Francisca'
>>> m2.strAddress
'717 Lynx Street'
>>> m3.strName
'Maya'
>>> m3.strAddress
'717 Lynx Street'

您正在将类继承应用于您的类Son。这意味着它将继承基类Mother 的所有实例变量和方法。因此,您将继承使用这些默认值的 __init__ 方法。

关于python - __init__ 括号里的东西叫什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57965901/

相关文章:

Python 函数在定义之前调用

c# - 使用集合初始化程序初始化 WebControl 对象的 Attributes 属性

python - 如何在按钮中显示图像?

ios - Swift addSubview() 在使用 init 创建的 View 上(重复 :count) doesn't work

c++ - 从文件初始化静态常量成员

Python BeautifulSoup Mix 匹配表中的项目

python - 狮身人面像模板

python - opencv - 视频编辑器控制比特率

python - 如何在 ctypes 中使用 typedef

python-3.x - Pandas_datareader错误SymbolWarning:未能读取符号:“T”,替换为NaN