Python面向对象
一、类
1.1定义类
Python2中类分为:经典类和新式类
- 语法
# 经典类
class 类名:
代码
......
# 新式类
class 类名(object):
代码
......
注意:类名要满足标识符命名规则,同时遵循大驼峰命名习惯
1.2创建对象
对象又名示例
- 语法
对象名 = 类名()
- 示例
class Human:
def speak(self):
print('Human speaking')
human = Human()
human.speak() # Human speaking
1.3self
self指的是调用该函数的对象
- 示例
class Human:
def speak(self):
print('Human speaking')
print(self)
human = Human()
human.speak() # Human speaking
print(human)
"""
<__main__.Human object at 0x00000227FD205400>
<__main__.Human object at 0x00000227FD205400>
"""
二、对象属性
2.1在类外添加对象属性
- 语法
对象名.属性名 = 值
- 示例
Human.width = 100
Human.height = 100
2.2在类外获取对象属性
- 语法
对象名.属性名
- 示例
print(f"width = {human.width}")
print(f"height = {human.height}")
2.3在类中获取对象属性
- 语法
self.属性名
- 示例
class Human:
def speak(self):
print('Human speaking')
print(f"width = {self.width}")
print(f"height = {self.height}")
三、魔法方法
在Python中,__xx__()
的函数叫做魔法方法,指的是具有特殊功能的函数
3.1__init__()
- 作用:初始化对象
class Human:
def __init__(self):
print('init function')
def speak(self):
print('Human speaking')
print(self)
human = Human()
# init function
注意:
__init__()
方法,在创建一个对象时默认被调用,不需要手动调用__init__(self)
中的self参数,不需要开