python自学笔记(7)--Python类
来源:互联网 发布:烟台青少年编程培训 编辑:程序博客网 时间:2024/05/29 18:11
python自学笔记(7)--Python类
Python中的类是一个可调用对象,即类对象。Python中允许多重继承,也就是说可以有多个并行父类。
P.S.python中貌似没有类似于java中的静态方法,也就是python中类无法直接调用方法,但是python中类可以直接调用类的属性(数据变量)。
通过调用类来创建实例。Instance = Classname(arg)
类中每个方法都必须具有self参数,它隐含当前实例之意。
在方法内对self属性做赋值运算会产生每个实例自己的属性
Python中的类是一个可调用对象,即类对象。Python中允许多重继承,也就是说可以有多个并行父类。
P.S.python中貌似没有类似于java中的静态方法,也就是python中类无法直接调用方法,但是python中类可以直接调用类的属性(数据变量)。
通过调用类来创建实例。Instance = Classname(arg)
类中每个方法都必须具有self参数,它隐含当前实例之意。
在方法内对self属性做赋值运算会产生每个实例自己的属性
Python规定,没有实例,方法不允许被调用,此即为“绑定”。
class BaseClass(): data = 'hello BaseClass'#类属性 passclass TestClass(BaseClass):#括号内是父类名称 data = 'ddddddd'#类属性,先找这个变量,后找父类的变量 def hehe(self):#类中每个方法都必须具有self参数,它隐含当前实例之意 print(self.value) def haha(self,x): self.value = x#在方法内对self属性做赋值运算会产生每个实例自己的属性test = TestClass()#实例化类时,value还没有被赋值和初始化test.haha(333)test.hehe()#333print(test.data)#ddddddd
#类相关的内建函数
__init__是类的构造器,如果不调用构造器,在类实例化之初,只是实例了一个类的名称,可以在创建类实例的时候通过重载构造器初始化实例中的变量。print(issubclass(TestClass,BaseClass))#判断是否父子关系Trueprint(isinstance(test,TestClass))#判断是否是实例和类的关系Trueprint(isinstance(test,BaseClass))#Trueprint(hasattr(test, "data"))#判断对象内是否有指定属性,还有getattr(),setattr(),delattr().Trueprint(hasattr(test, "datad"))#False
def __init__(self, x): self.value = x属性搜索顺序:由下而上,由左至右。
阅读全文
0 0
- python自学笔记(7)--Python类
- python自学笔记(一)
- python自学笔记(一)
- python自学笔记1
- python自学笔记 2
- python自学笔记 3
- python自学笔记 4
- python自学笔记
- Python自学笔记
- python自学笔记 20151126
- python 自学笔记
- python 自学笔记20151215
- python 自学笔记20151222
- python 自学笔记
- python 自学笔记 20151224
- Python自学笔记20160620
- PYTHON自学笔记1
- python自学笔记
- 关于struts2中action请求会执行两次的问题
- RESTful SpringMvc
- 超神奇的四个在线网站,万万没想到他们竟然这么好用!
- PHP对API传输参数加密头部信息,生成字符串代码。来自百度云API
- 一些关于bootstrap,bagging,Adaboost,random forest, gradient boost的基本理解
- python自学笔记(7)--Python类
- 把GIT导出的项目转换成Maven项目
- Excel在统计分析中的应用—第八章—假设检验-单个正态总体方差的假设检验
- TCP 三次握手vsTCP 四次握手
- react入坑之列表和key(索引)
- React Native入门(十三)之组件的生命周期
- IntelliJ IDEA 学习笔记
- spring配置中<context:annotation-config> 和 <context:component-scan>区别
- dataGrid 删除行