面向对象程序设计
定义和使用类
class Geese:
'''大雁类'''
pass
wildgoose = Geese()
wildgoose1 = Geese()
wildgoose2 = Geese()
wildgoose3 = Geese()
class Geese:
'''大雁类'''
def __init__(self):
print("大雁类")
wildgoose = Geese()
wildgoose1 = Geese()
wildgoose2 = Geese()
wildgoose3 = Geese()
大雁类
大雁类
大雁类
大雁类
class Geese:
'''大雁类'''
def __init__(self,beak,wing,claw):
print("我是大雁类!我有以下特征:")
print(beak)
print(wing)
print(claw)
beak_1 = "喙的基部较高,长度和头部的长度几乎相等"
wing_1 = "翅膀长而尖"
claw_1 = "爪子是蹼状的"
wildgoose = Geese(beak_1,wing_1,claw_1)
我是大雁类!我有以下特征:
喙的基部较高,长度和头部的长度几乎相等
翅膀长而尖
爪子是蹼状的
class Geese:
'''大雁类'''
def __init__(self,beak,wing,claw):
print("我是大雁类!我有以下特征:")
print(beak)
print(wing)
print(claw)
def fly(self,state):
print(state)
'''**************调用方法*********************'''
beak_1 = "喙的基部较高,长度和头部的长度几乎相等"
wing_1 = "翅膀长而尖"
claw_1 = "爪子是蹼状的"
wildGoose = Geese(beak_1,wing_1,claw_1)
wildGoose.fly("我飞行的时候,一会儿排成个人字,一会排成个一字")
我是大雁类!我有以下特征:
喙的基部较高,长度和头部的长度几乎相等
翅膀长而尖
爪子是蹼状的
我飞行的时候,一会儿排成个人字,一会排成个一字
class Geese:
'''大雁类'''
def __init__(self,beak,wing,claw):
print("我是大雁类!我有以下特征:")
print(beak)
print(wing)
print(claw)
def fly(self,state = '我能飞'):
print(state)
'''**************调用方法*********************'''
beak_1 = "喙的基部较高,长度和头部的长度几乎相等"
wing_1 = "翅膀长而尖"
claw_1 = "爪子是蹼状的"
wildGoose = Geese(beak_1,wing_1,claw_1)
wildGoose.fly()
我是大雁类!我有以下特征:
喙的基部较高,长度和头部的长度几乎相等
翅膀长而尖
爪子是蹼状的
我能飞
class Geese:
'''大雁类'''
neck = "脖子较长"
wing = "振翅频率高"
leg = "腿位于身份的中心支点,行走自如"
def __init__(self):
print(Geese.neck)
print(Geese.wing)
print(Geese.leg)
beak_1 = "喙的基部较高,长度和头部的长度几乎相等"
wing_1 = "翅膀长而尖"
claw_1 = "爪子是蹼状的"
wildGoose = Geese()
脖子较长
振翅频率高
腿位于身份的中心支点,行走自如
class Geese:
'''大雁类'''
neck = "脖子较长"
wing = "振翅频率高"
leg = "腿位于身份的中心支点,行走自如"
number = 0
def __init__(self):
Geese.number += 1
print("\n我是第"+str(Geese.number)+"只大雁,我属于雁类!我有以下特征:")
print(Geese.neck)
print(Geese.wing)
print(Geese.leg)
list1 = []
for i in range(4):
list1.append(Geese())
print("一共有"+str(Geese.number)+"只大雁")
Geese.beak = "喙的基部较高,长度和头部的长度几乎相等"
print("第2只大雁的喙:",list1[1].beak)
我是第1只大雁,我属于雁类!我有以下特征:
脖子较长
振翅频率高
腿位于身份的中心支点,行走自如
我是第2只大雁,我属于雁类!我有以下特征:
脖子较长
振翅频率高
腿位于身份的中心支点,行走自如
我是第3只大雁,我属于雁类!我有以下特征:
脖子较长
振翅频率高
腿位于身份的中心支点,行走自如
我是第4只大雁,我属于雁类!我有以下特征:
脖子较长
振翅频率高
腿位于身份的中心支点,行走自如
一共有4只大雁
第2只大雁的喙: 喙的基部较高,长度和头部的长度几乎相等
class Geese:
'''大雁类'''
def __init__(self):
self.neck= "脖子较长"
self.wing = "振翅频率高"
self.leg = "腿位于身份的中心支点,行走自如"
print("我属于大雁类,我有以下特征:")
print(self.neck)
print(self.wing)
print(self.leg)
geese = Geese()
我属于大雁类,我有以下特征:
脖子较长
振翅频率高
腿位于身份的中心支点,行走自如
print(geese.leg)
腿位于身份的中心支点,行走自如
print(Geese.leg)
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-17-53b9361ae910> in <module>()
1 #不能通过类的名称访问
----> 2 print(Geese.leg)
AttributeError: type object 'Geese' has no attribute 'leg'
geese1 = Geese()
geese1.leg = "通过腿我可以行走"
print("geese:",geese.leg)
print("geese1:",geese1.leg)
我属于大雁类,我有以下特征:
脖子较长
振翅频率高
腿位于身份的中心支点,行走自如
geese: 腿位于身份的中心支点,行走自如
geese1: 通过腿我可以行走