python 类的学习
2016-03-01 17:28
549 查看
python中类的声明使用关键词class,可以提供一个可选的父类或者说基类,如果没有合适的基类,那就用object作为基类。
Python类可以描叙为某种类型的集合,类还拥有属性和功能,如电脑,屏幕负责显示,键盘负责输入,磁盘负责存储,各司其职。
python类具有3个特点:
1 属性没有公有和私有的说法。Python不支持私有成员。所有Python类中的成员都是公共的,可以从类外部调用或存取的。所谓成员名前加一条或两条下划线“_func”或“__member”的方式只是一种约定俗成,提示用户这个成员函数或变量只用于内部调用,不是设计给用户使用的。即使如此,用户只要想调用便可调用,无任何约束。
2 没有构造方法,初始方法只是在实例化时会执行的方法。类实例化后,可以使用其属性,实际上,创建一个类之后,可以通过类名访问其属性。如果直接使用类名修改其属性,那么将直接影响到已经实例化的对象
3 定义方法时必须带上self参数
示例:
代码格式:
2 类的多重继承
class<类名>(object): "类的说明文档" 属性 初始方法__init__ 其他方法
Python类可以描叙为某种类型的集合,类还拥有属性和功能,如电脑,屏幕负责显示,键盘负责输入,磁盘负责存储,各司其职。
python类具有3个特点:
1 属性没有公有和私有的说法。Python不支持私有成员。所有Python类中的成员都是公共的,可以从类外部调用或存取的。所谓成员名前加一条或两条下划线“_func”或“__member”的方式只是一种约定俗成,提示用户这个成员函数或变量只用于内部调用,不是设计给用户使用的。即使如此,用户只要想调用便可调用,无任何约束。
2 没有构造方法,初始方法只是在实例化时会执行的方法。类实例化后,可以使用其属性,实际上,创建一个类之后,可以通过类名访问其属性。如果直接使用类名修改其属性,那么将直接影响到已经实例化的对象
3 定义方法时必须带上self参数
示例:
class student: name='' grade='' __sex='' def __init__(self,n,g,s): self.name=n self.grade=g self.__sex=s def speak(self): print("%s在读%s,性别为%s "%(self.name,self.grade,self.__sex)) p=student('小明','一年级','男') p.speak()
继承类的定义
1 单继承代码格式:
class<类名>(父类名) <语句>
2 类的多重继承
class<类名>(父类1,父类2) <语句>
# -*- coding: utf-8 -*- class student: name='' grade='' sex='' def __init__(self,n,g,s): self.name=n self.grade=g self.sex=s def speak(self): print("%s在读%s,性别为%s "%(self.name,self.grade,self.sex)) p=student('小明','一年级','男') p.speak() class another: name='' test='' def __init__(self,n,t): self.name=n self.tchool=t def get_data(self): print("%s,学校是%s"%(self.name,self.tchool)) h=another('周','四中') h.get_data() class student_1(another,student): def __init(self,n,g,s,t): student.__init__(self,n,g,s) another.__init__(self,n,t) def speak2(self): print("%s在读,学校%s "%(self.name,self.tchool)) f=student_1('小明','四中') f.speak2()
相关文章推荐
- Python动态类型的学习---引用的理解
- Python3写爬虫(四)多线程实现数据爬取
- 垃圾邮件过滤器 python简单实现
- 下载并遍历 names.txt 文件,输出长度最长的回文人名。
- install and upgrade scrapy
- Scrapy的架构介绍
- Centos6 编译安装Python
- 使用Python生成Excel格式的图片
- 让Python文件也可以当bat文件运行
- [Python]推算数独
- Python中zip()函数用法举例
- Python中map()函数浅析
- Python将excel导入到mysql中
- Python在CAM软件Genesis2000中的应用
- 使用Shiboken为C++和Qt库创建Python绑定
- FREEBASIC 编译可被python调用的dll函数示例
- Python 七步捉虫法