类与对像
对象 = 属性 + 方法
对象是类的实例。换句话说,类主要定义对象的结构,然后我们以类为模板创建对象。类不但包含方法定义,而且还包含所有实例共享的数据。
- 封装:信息隐蔽技术
我们可以使用关键字 class
定义 Python 类,关键字后面紧跟类的名称、分号和类的实现。
【例子】
1
class Turtle: # Python中的类名约定以大写字母开头
2
"""关于类的一个简单例子"""
3
# 属性
4
color = 'green'
5
weight = 10
6
legs = 4
7
shell = True
8
mouth = '大嘴'
9
10
# 方法
11
def climb(self):
12
print('我正在很努力的向前爬...')
13
14
def run(self):
15
print('我正在飞快的向前跑...')
16
17
def bite(self):
18
print('咬死你咬死你!!')
19
20
def eat(self):
21
print('有得吃,真满足...')
22
23
def sleep(self):
24
print('困了,睡了,晚安,zzz')
25
26
27
tt = Turtle()
28
print(tt)
29
# <__main__.Turtle object at 0x0000007C32D67F98>
30
31
print(type(tt))
32
# <class '__main__.Turtle'>
33
34
print(tt.__class__)
35
# <class '__main__.Turtle'>
36
37
print(tt.__class__.__name__)
38
# Turtle
39
40
tt.climb()
41
# 我正在很努力的向前爬...
42
43
tt.run()
44
# 我正在飞快的向前跑...
45
46
tt.bite()
47
# 咬死你咬死你!!
48
49
# Python类也是对象。它们是type的实例
50
print(type(Turtle))
51
# <class 'type'>
<__main__.Turtle object at 0x000002200820E898> <class '__main__.Turtle'> <class '__main__.Turtle'> Turtle 我正在很努力的向前爬... 我正在飞快的向前跑... 咬死你咬死你!! <class 'type'>
- 继承:子类自动共享父类之间数据和方法的机制