word格式
def 方法名(形参1,形参2,…): 方法体
12.2调用静态方法语法格式
类名.静态方法名(实参1,实参2,…) (推荐) 对象名.静态方法名(实参1,实参2,…) (不推荐)
12.3各种方法定义规则
? ? ? ?
.. ..
只访问成员变量的方法,定义成实例方法 只访问类变量的方法,定义类方法
既访问成员变量,也访问类变量的方法,定义成实例方法 既不访问成员变量,也不访问类变量,定义成静态方法
word格式
练习题1
概念理解 要求:
1. 如何理解面向对象编程(OOP) 2. 什么是类,什么是对象 提示:
1. 类和对象有两个层面的含义:类是对一类具体的事物的抽象的概括,具有相似内部状态和运动规律的实体的集合,具有相同属性和行为事物的统称,是抽象的;对象是一个具体的事物,在现实世界中可以是看得见摸得着的,可以直接使用的 2. 拥有相同(或者类似)属性和行为的对象都可以抽像出一个类
练习题2
定义类、创建对象 要求:
1. python中如何定义一个类 class 类名: 方法...
class Test:
def test(self): pass 2. 类(class)由哪三个部分构成
.. ..
word格式
类的名称、类的属性、类的方法 3. 类名的命名规则是什么 大驼峰命名法
4. python中如何通过类创建对象,请用代码进行说明 # 创建对象
# 对象名 = 类名()
class Human: # 定义类 pass
man = Human() # 创建对象
5. 如何在类中定义一个方法,请用代码进行说明 class Human:
# 定义run方法 def run(self):
print(\正在奔跑\)
6. 定义一个People类,使用People类,创建一个mayun对象后,添加company属性,值是\阿里巴巴\;创建一个wangjianling对象,添加company属性,值是\万达集团\ class People: pass
mayun = People() # 创建mayun对象
mayun.company = \阿里巴巴\ # 为对象添加属性 wangjianlin = People() # 创建wangjianlin对象 wangjianlin.company = \万达集团\
7. 定义一个水果类,然后通过水果类,创建苹果对象、橘子对象、西瓜对象并分别添加上颜色属性 class Fruit: pass
apple = Fruit()
apple.color = \红色\ orange = Fruit()
orange.color = \橙色\ watermelon = Fruit() watermelon = \绿色\
.. ..
word格式
8. 定义一个汽车类,并在类中定义一个move方法,然后分别创建BMW_X9、AUDI_A9对象,并添加颜色、马力、型号等属性,然后分别打印出属性值、调用move方法 class Car:
def move(self):
print(\汽车正在移动\)
BMW_X9 = Car()
BMW_X9.color = \白色\ BMW_X9.horsepower = \ BMW_X9.model = \ BMW_X9.move()
print(\这辆%s %s的马力是%s匹
\%(BMW_X9.color,BMW_X9.model,BMW_X9.horsepower))
AUDI_A9 = Car()
AUDI_A9.color = \黑色\ AUDI_A9.horsepower = \ AUDI_A9.model = \ AUDI_A9.move()
print(\这辆%s %s的马力是%s匹\%(AUDI_A9.color, AUDI_A9.model, AUDI_A9.horsepower)) 提示:
1. 可以在通过类创建出对象后,再为对象添加属性:对象名.属性名 = 值 的方式添加
2. 调用对象的方法和调用普通函数的一样,使用()来实现调用,只不过调用方法需要使用:对象名.方法名()来进行调用
练习题3
要求:
__init__方法、__str__方法、self 1. __init__方法有什么作用,如何定义
当使用类名()的方法去创建对象的时候 python解释器会自动调用__init__方法
因此可以在__init__方法中做一些初始化的设定 在每次创建新对象时,都自动完成这些初始化的设定 class Human:
.. ..
word格式
def __init__(self): # 注意名字不能写错,否则就只是一个普通的方法
pass
2. __str__方法有什么作用,使用时应注意什么问题
如果类中定义了__str__方法,那么当使用print打印对象时,打印出的信息是 __str__方法的返回值 注意点:
__str__方法必须有返回值,且必须返回一个字符串类型的值 3. 方法中的\代表什么
类中定义的许多方法,除了之后会提到的类方法和静态方法以外,其他任何的方法
当被对象调用时,python解释器都会把这个对象作为这个方法的第一个参数传入
所以定义这些方法时,必须写上第一个参数,往往写成self去接收 因此在这些方法中,self就可以直接被当做当前对象来使用
4. 在类中定义__init__和__str__方法时,必须提供形参吗,第一个形参又必须是self吗?为什么? 同上
但这个参数名可以写成别的,但往往写成self,便于编写程序的人区分 提示:
1. __init__方法可以在创建对象时,为对象实现一些初始化的操作,提供一些默认属性
2. __str__方法可以在使用print打印对象时,打印出__str__方法的返回值 3. __str__方法必须拥有返回值,并且返回值的数据类型格式只能是字符串类型
练习题4
判断以下说法是否正确,并说明理由 要求:
1. 类就好比一个模型,可以预先定义一些统一的属性或者方法,然后通过这个模型创建出具体的对象 True
2. 类是抽象的,而对象是具体的、实实在在的一个事物
.. ..
相关推荐: