基础篇:2. IDLE快捷键、类

python 的 IDLE 常用快捷键功能:

Alt+3 Alt+4 注释、取消注释代码行
Alt+/ 自动补全前方出现过的字符

 

 

首先重新界定属性的定义:所有在点' . '之后的对象都被称为前者的属性。

 

类由数据和方法组成。

【1】在python中,不需要为数据属性进行声明,其类似于局部变量,在第一次被方法赋值时创建;

【2】方法对象包括构造函数和逻辑处理函数,前者用 def __init__(self) 来进行表示;

【3】如果数据属性和方法属性发生重合,那么数据属性会覆盖方法属性;(可以利用某种约定的定义来规避这种错误)

【4】方法属性的第一个参数一般为self,但也可以是其他字符。为了更好的被阅读,依旧建议用约定俗成的模式。

【4】python中不支持重载方式。当然了,最近的版本也可以利用分发糖的形式来支持重载,详情在此

class Student:
def __init__(self,name): if name == '': self.name = 'Anna' else: self.name = name self.grade = 90 def print(self): print(self.name) print(self.grade) r = Student('') r.print() s = Student('John') s.print()

 

类的一个非常重要的特性为继承。没有继承的类与结构体无异。python派生类的特点:

【1】由于python中不存在方法的重载,因此在C++看来,python中所有类的方法都是虚函数;

【2】类的继承形式为:class DrivedClassName(BaseClassName),也可以多重继承,继承的搜索顺序为从左到右;

【3】利用空类来存储不同的类型的数据,类似于C语言的strcture。

import classStudent as c

class College(c.Student):
    def __init__(self,name,grade,IQ,EQ):
        #super(College,self).__init__(name,grade) #与下面等效 c.Student.
__init__(self,name,grade) self.IQ = IQ self.EQ = EQ def print(self): print(self.name) print(self.grade) print(self.IQ) print(self.EQ) graduate = College("Andy",84,82,89) graduate.print()

 

空类实现 C 语言的 structure 功能

class Empty:
    pass

John = d.Empty()
John.name = 'John'
John.age = 23
print(John.name)
print(John.age)

 

posted @ 2019-06-12 15:45  andyalgorithm  阅读(498)  评论(0编辑  收藏  举报