
正文
python3初始化函数的简单介绍
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
python中的__init__()是什么意思呢
python中python3初始化函数的__init__()时类的初始化函数python3初始化函数,比如python3初始化函数:
class Obj:
def __init__():
print 1
obj = Obj() #这时候调用__init__这个方法
如果解决python3初始化函数了您的问题请采纳!
如果未解决请继续追问
相关问答
Q1: python中子类调用父类的初始化函数初始化自身有些不太懂的地方!代码如下?
python2里面需要这样写python3初始化函数,python3里面不需要写参数python3初始化函数,直接super().__init__()就可以python3初始化函数了。
Q2: pythonnp初始化固定值
Python np初始化固定值是指使用NumPy库中的np.zeros()函数来创建一个具有固定值的数组。np.zeros()函数接受一个参数,该参数是一个数组,其中每个元素都将被初始化为0。这个函数可以用来创建一个具有指定大小和类型的数组,并且可以指定数组中每个元素的值。例如,可以使用np.zeros()函数创建一个大小为10x10的数组,并将每个元素都初始化为1:np.zeros((10,10), dtype=int) + 1。这样就可以创建一个具有固定值的数组,每个元素都是1。
Q3: 预定义函数如何初始化
1.初始化函数的定义:当你创建一个实例的时候,这个函数就会被自动调用。
2.初始化函数的格式:中间是“init”,这个单词的中文意思是“初始化”,然后前后都要有【两个下划线】,然后init()的括号中,第一个参数一定要写上self,不然会报错。
class 乘法表():
def __init__(self,n):
self.n = n
def 打印(self):
for i in range(self.n+1):
for x in range(1,i+1):
print( '%d X %d = %d' % (i ,x ,i*x) ,end = ' ' )
print(' ')
三三乘法表 = 乘法表(3) #传整数3给参数n
三三乘法表.打印() #打印三三乘法表
五五乘法表 = 乘法表(5) #传整数5给参数n
五五乘法表.打印() #打印五五乘法表
登录后复制

3.类的继承:
①"单继承":def 新函数名(旧函数名):
②“多重继承”就是一个子类从【多个父类】中继承类方法。格式是class 子类(父类1,父类2,……)。
class Person(): #父类的初始化
def __init__(self,name):
self.name=name
class Man(Person): #子类Man继承父类Persson,若要修改参数,即
def __init__(self):
Person.__init__(self,name='范罗苏姆')
登录后复制
③类的继承和参数传递
class Survey():
# 收集调查问卷的答案
def __init__(self, question):
self.question = question
self.response = []
# 显示调查问卷的题目
def show_question(self):
print(self.question)
# 存储问卷搜集的答案
def store_response(self, new_response):
self.response.append(new_response)
# 请定义实名调查问卷的新类 RealNameSurvey,继承自 Survey 类
class RealNameSurvey(Survey):
def __init__(self, question):
Survey.__init__(self, question)
self.response = {} # 由于籍贯地和名字挂钩,所以用构成为“键值对”的字典来存放。
# 存储问卷搜集的答案(覆盖父类的类方法)
def store_response(self, name, new_response): # 除了 self,还需要两个参数。
self.response[name] = new_response # 键值对的新增
survey = RealNameSurvey('你的籍贯地是哪?')
survey.show_question()
while True:
response = input('请回答问卷问题,按 q 键退出:')
if response == 'q':
break
name = input('请输入回答者姓名:')
survey.store_response(name, response) # 调用类方法,将两次通过 input 的字符串存入字典。
# 输出测试
for name, value in survey.response.items():
print(name + ':' + value)
登录后复制

Q4: python 新人 对 初始化函数 的概念没明白 为什么又要初始化函数? 可以解释的详细些吗
首先你要理解类和实例的区别。
类是你定义的这个新类型,这个类型可以有很多个实例。
比如 a = A(),A是个类,a就是A的一个实例,同样可以b=A(),b也是A的一个实例。
初始化函数__init__在实例刚创建完成的时候调用,这里可以对这个实例的属性进行初始化。
比如:
class A:
def __init__(self,num):
self.data = num
a = A(1)
b = A(2)
a.data的值就是1,b.data的值就是2
Q5: python中的__init__(self)是什么意思呢
Python中,__init__()方法是所谓的对象的“构造函数”,负责在对象初始化时进行一系列的构建操作
假设有如下类:
class worker:
pass
在Python中,对某个类实例进行成员赋值,可以创建不存在的成员:
a=worker()
a.pay=55000
a.name='Bob'
如果对于每一个worker类的实例对象,都要进行如此赋值的话,这个类会变得很难使用
另外,对于用于特殊场合的类,可能要求在对象创建时,进行连接数据库、连接FTP服务器、进行API验证等操作,这些初始化操作,都可以封装在__init__()方法中进行
__init__方法使用如下规则定义:
class ex:
def __init__(self):
pass
__init__方法必须接受至少一个参数即self,Python中,self是指向该对象本身的一个引用,通过在类的内部使用self变量,类中的方法可以访问自己的成员变量,简单来说,self.varname的意义为”访问该对象的varname属性“
当然,__init__()中可以封装任意的程序逻辑,这是允许的,__init__()方法还接受任意多个其他参数,允许在初始化时提供一些数据,例如,对于刚刚的worker类,可以这样写:
class worker:
def __init__(self,name,pay):
self.name=name
self.pay=pay
这样,在创建worker类的对象时,必须提供name和pay两个参数:
b=worker('Jim',5000)
Python会自动调用worker.__init__()方法,并传递参数。
通常情况下,self形参由Python自动赋值,但是,在类继承中,并不是这样
例如,Python的HTML处理工具HTMLParser,是一个基于OOP模型的工具,要使用该工具,必须编写一个类,继承html.parser.HTMLParser类,并重载一系列方法,以定制自己的功能
from html.parser.HTMLParser
class ex2(HTMLParser):
def __init__(self):
HTMLParser.__init__(self)
此处,需要调用了HTMLParser类的__init__方法,而且,此处手动给HTMLParser.__init__()方法的self形参赋值,事实上,如果不显式指定self形参的值,Python不会在此处自动为HTMLParser.__init__()方法的self形参进行赋值
如此设计的原因是,在子类中需要获得超类的成员和方法,而通过在子类的__init__方法中调用超类的__init__方法,并手动给它传递指向子类的self值,可以使超类的__init__方法将所初始化的变量设置成子类的变量,这样,就可以在子类中直接访问超类的变量了。
python3初始化函数的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、python3初始化函数的信息别忘了在本站进行查找喔。







