目录
2. 运算符重载(__add__, __len__, ...)
1. 什么是面向对象编程(OOP)
面向对象是一种编程范式,把现实世界的事物封装成“对象”,对象由“属性”(数据)和“方法”(函数)组成。面向对象主要包括封装、继承、多态三大特性。
2. Python类和对象
定义类
Python
class Animal:
pass
创建对象(实例)
Python
cat = Animal()
print(cat) # <__main__.Animal object at 0x...>
3. 类的属性和方法
属性描述对象的状态,方法描述对象的行为。
Python
class Dog:
def bark(self):
print("Woof!")
dog = Dog()
dog.bark() # 输出:Woof!
4. 构造方法 __init__
用于初始化对象。
Python
class Person:
def __init__(self, name, age):
self.name = name # 实例属性
self.age = age
p1 = Person("Alice", 20)
print(p1.name, p1.age) # 输出:Alice 20
5. 实例属性与类属性
实例属性
属于每一个对象,互不影响。
类属性
属于类本身,所有对象共享。
Python
class Student:
school = "PythonSchool" # 类属性
def __init__(self, name):
self.name = name # 实例属性
s1 = Student("Tom")
s2 = Student("Jerry")
print(s1.school) # PythonSchool
print(s2.school) # PythonSchool
Student.school = "NewSchool"
print(s1.school) # NewSchool
6. 方法类型:实例方法、类方法、静态方法
实例方法(最常见)
Python
class Hello:
def say_hello(self):
print("Hello")