python中__init__()括号里面的变量应该如何写,分别表示啥?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中__init__()括号里面的变量应该如何写,分别表示啥?相关的知识,希望对你有一定的参考价值。
举例 def __init__(self, parent):
wx.ScrolledWindow.__init__(self, parent, -1)
为什么有的时候__init__要申明(self,parent,id,title)有的时候就只用__init__(self),parent表示的是什么?
#类描述学生
class Student:
def __init__(self,name,age): #构造实例时将参数值传递给当前那个实例的成员
self.name=name
self.age=age
s = Student('tom',20) #此时执行的就是__init__(self,name,age)
print(s.name)
print(s.age)
------------------
tom
20 参考技术A
1、在class中,如果你使用了__init__(self),那么括号里面必须有一个self
这就和
__init__(self):self.name = name
之后的参数必须要用self一样的
2、在__init__(self) 括号里面其他的就是参数,和你平时的def af(id,title)一样的意思
参考技术B parent不过是一个参数罢了,在这里指的是父窗口除了第一个参数self指的是类自身,其余都是初始化类时需要传入的参数 参考技术C __init__()方法是对象初始化方法,在对象实例化时自动调用,所以在初始化的时候需要给对象赋值等操作时,可以在此定义
Golang中的init函数
参考技术Ainit函数在包中定义,通常用来
除了下面讨论的一些差异之外,init函数中可以放任何常规函数可以放的东西
要使用导入的包,需要先将包初始化,初始化及顺序问题由Golang的 running system 完成。
Go里面的一个包可以包含多个文件。分布在众多包中的众多文件,变量和init函数执行的顺序应该是什么样子呢?之前的 文章 提到了变量的初始化顺序。完成此操作后,需要决定文件 a.go 或 z.go 中的变量初始化谁更应该早执行。 这取决于传递给编译器的文件顺序。 如果 z.go 首先由构建系统传递,则 z.go 先执行,然后在 a.go 的再执行。 这同样适用于init 函数的触发。 语言规范建议始终使用相同的顺序并按字典顺序从包中传递文件名:
不过依赖文件名初始化顺序的程序十分罕见,让我们来看这样子的例子
运行后,程序会这样输出
init 函数不需要参数也不返回任何值。和main不同,标识符init未声明,所以不能被引用
在编译时,程序返回
同一个包或文件中可以有很多个init函数,在不同文件中定义的init函数如下按照字母顺序执行,同一个文件按声明顺序执行,举例
输出
init函数的最常见用途,就是用来给那些不能通过表达式初始化的变量初始化,如:
表达式中可不能使用for循环,所以通过init函数来解决这个问题
Go对于未使用的引用非常严格。有些场景,你导入一个包,只为了执行其中的init函数(如mysql的driver)。
以上是关于python中__init__()括号里面的变量应该如何写,分别表示啥?的主要内容,如果未能解决你的问题,请参考以下文章