社区
脚本语言
帖子详情
python 类属性和 __init__
nangongxiaobai
2020-07-22 02:48:34
eg:
class Learning(Object):
name = 'property'
def __init__(self):
target = 'senior'
如上面的例子,在类中定义属性的时候,直接写的name和在init中的 target,有什么区别?麻烦大神解答一下
...全文
614
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
_方法的作用,强调了实例
属性
在创建对象时绑定的重要性。
python
学习笔记(十一) -- 实例
属性
和
类
属性
、__
init
__(构造方法)、MethodType函数 与 java对比分析
本文详细介绍了
Python
中的实例
属性
、
类
属性
、__
init
__构造方法,并与Java进行对比分析。强调了
Python
中实例
属性
的创建与访问、
类
属性
的特性以及动态语言的特点,如在运行时给
类
或对象添加
属性
和方法。同时,文章讨论了MethodType函数在动态添加方法中的作用。
Python
之
类
和对象【二】(
类
属性
和实例
属性
,__
init
__(self)方法的使用场景,
类
方法和静态方法)
文章介绍了
Python
中
类
的
属性
和方法,包括实例
属性
的定义和修改,__
init
__方法的使用场景,以及
类
方法和静态方法的概念和调用方式。
类
属性
是所有对象共享的,而实例
属性
由每个对象独立拥有。__
init
__方法用于对象初始化。
类
方法通过@classmethod装饰器,可以访问
类
属性
但不能访问实例
属性
,而静态方法与
类
或实例无关,通过@staticmethod装饰器定义。,
python
中
init
和
属性
_
python
– 如何在__
init
__中设置await的
类
属性
博客介绍了
Python
中大多数魔术方法不适用于异步,应使用专用异步魔法方法。还提及现有asyncio库处理异步的两种方式,一是工厂模式,二是用顶级协同函数创建对象。以aiopg中的create_pool函数为例,说明了如何解决__
init
__中异步调用的问题。
python
类
属性
定义在
init
外_
python
类
内
init
外声明的
属性
与
init
内声明的对象
属性
的访问和操作区别...
本文探讨了
Python
中
类
的内部和外部声明
属性
的区别,包括__
init
__方法内外的
属性
定义、私有
属性
的实现机制及访问控制,同时分析了
类
对象与实例对象之间的差异。
脚本语言
37,739
社区成员
34,211
社区内容
发帖
与我相关
我的任务
脚本语言
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写文章