社区
脚本语言
帖子详情
python 类属性和 __init__
nangongxiaobai
2020-07-22 02:48:34
eg:
class Learning(Object):
name = 'property'
def __init__(self):
target = 'senior'
如上面的例子,在类中定义属性的时候,直接写的name和在init中的 target,有什么区别?麻烦大神解答一下
...全文
633
3
打赏
收藏
python 类属性和 __init__
eg: class Learning(Object): name = 'property' def __init__(self): target = 'senior' 如上面的例子,在类中定义属性的时候,直接写的name和在init中的 target,有什么区别?麻烦大神解答一下
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
uswood
2020-08-26
打赏
举报
回复
name是类的属性,是Learning类独有的变量,而__init__是构造函数,在创建实例的时候里面设置的变量会变成实例独有的变量。 类的属性可以通过继承搜索得到。 假设: A = Learning(3) 那么A.target 就等于3 如果你写A.name ,会得到'property',但这不是直接从A里面得到的,是通过继承搜索从类Learning里面找到的,A本身没有这个属性。 PS:你的__init__函数里面变量名要加self,即 self.target = 'target',可以参考楼上的
bradioho
2020-08-25
打赏
举报
回复
name属性是 类learning的类属性,有且仅有一份,所有该类的下的实例共享这个属性,而且可以 Learning.name这么调用;但是init下的target不能 Learning.target这样调用。只能在下面调用声明这个类的实例后,用实例来访问。(实例都可以访问这两个属性)。 然后你的代码有点错,Object前面小写o;init下 target不能直接写,需要在init声明,然后用self来调用target(在定义的方法内部) 给你我测试的代码,你跑一下就全明白了 class Learning(object): name = 'property' def __init__(self, target): self.target = 'ppp' print(Learning.name) p1 = Learning('ddd') print(p1.name) print(p1.target) p1.target = 'ddd' print(p1.target) p1.name = 'TOM' print(p1.name) print(Learning.name)
zhyj_88
2020-07-22
打赏
举报
回复
name是类对象属性 target是__init__函数的局部变量 self.target是实例对象的属性 个人理解,希望对你有帮助。
Python
:
类
属性
和实例
属性
( __
init
__)
Python
:
类
属性
和实例
属性
( _
init
_) 先说说我学这部分时候的疑问吧,我学的时候看到有的
类
有定义实例
属性
(_
init
_),有些没定义实例
属性
(_
init
_)。 第一个疑问 :定义实例
属性
(_
init
_)和不定义实例
属性
(_
init
_)有什么区别? 举个例子:我们建立一个矩形的
类
,不定义实例
属性
,在
类
中我们创建一个矩形面积的方法getArea() class Rectangle(): def getArea(self,a,b): #求矩形的面积 return a*b r
python
学习笔记(十一) -- 实例
属性
和
类
属性
、__
init
__(构造方法)、MethodType函数 与 java对比分析
实例
属性
-- java中的全局变量 实例
属性
是给一个
类
的实例绑定一个
属性
其中__
init
__方法对应的就是java中的有参构造函数,其中的第一个参数是固定的,必须为self,只当前实例本身,对应java中的this,在__
init
__方法中我们可以给实例绑定
属性
。即java中的有参构造函数对全局变量赋初始值。 我们通过 People(fit) 就可以创建一个实例,通过实例.fit 就...
Python
之
类
和对象【二】(
类
属性
和实例
属性
,__
init
__(self)方法的使用场景,
类
方法和静态方法)
类
方法/
属性
,静态方法,__
init
__(self)方法的使用场景以及含义。
python
中
init
和
属性
_
python
– 如何在__
init
__中设置await的
类
属性
大多数魔术方法并不适用于异步def /等待 – 一般来说,您应该只使用专用的异步魔法方法等待__aiter__,__anext__,__aenter__和__aexit__。在其他魔法方法中使用它将完全不起作用(如__
init
__的情况),或者将迫使您始终使用异步上下文中魔术方法调用的任何触发器。现有的asyncio库倾向于以下两种方式之一:首先,我已经看到所使用的工厂模式(例如,asyncio-...
python
类
属性
定义在
init
外_
python
类
内
init
外声明的
属性
与
init
内声明的对象
属性
的访问和操作区别...
python
类
内
init
外声明的
属性
与
init
内声明的对象
属性
的访问和操作区别(面试题)1.在i
python
中输入以下代码,其输出会是什么?In [1]: classClassOut:...: out_mem= 'out_mem'...:printout_mem...:def __
init
__(self):...: inner_mem= 'inner_mem'...: ...
脚本语言
37,737
社区成员
34,208
社区内容
发帖
与我相关
我的任务
脚本语言
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
复制链接
扫一扫
分享
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
试试用AI创作助手写篇文章吧
+ 用AI写文章