Python学习笔记二
函数
- 定义与调用
python
def 函数名(参数列表):
# 函数体:执行的具体代码
# ...
return 返回值
def greet(name): # 定义一个打招呼的函数
"""向指定的人打招呼"""
print(f"Hello, {name}!")
# 调用函数(必须调用才会执行)
greet("Alice") # 输出: Hello, Alice!
greet("Bob") # 输出: Hello, Bob!
def compute(x, y):
return x + y, x - y # 可以返回两个值
sum_val, diff_val = compute(10, 4)
print(sum_val) # 14
print(diff_val) # 6
类与对象
类定义了这类事物"有什么"(属性)和"能做什么"(方法)
在类中定义的函数叫做方法
类是一个概念、一个分类,比如"汽车"这个分类,它定义了所有汽车共有的特征(比如颜色、品牌、有车轮)和行为(能启动、能刹车)
对象是根据类这个蓝图创造出来的具体实例
类 = 一张"汽车设计图纸"(本身不能开,但规定了汽车的构造)
对象 = 根据图纸生产出来的一辆辆具体的汽车
- 定义类:类中最特殊且最重要的方法是 init,它被称为初始化方法(或构造函数)。当你创建一个新对象时,Python 会自动调用这个方法,用来给对象"初始化"属性
- 理解 self:self 代表"对象自己",在类的方法中,第一个参数必须是 self。
它的作用是告诉 Python:"我要操作的是当前这个对象的属性,而不是别的对象的。"
python
class Student: # 学生类,描述学生的基本信息
school = "Python大学"
def _init_(self,name,age):
self.name = name
self.age = age
def introduce(self):
return "大家好,我叫{self.name},今年{self.age},来自{Student.school}。"
# 创建对象,实例化
stu1 = Student("小明",18)
stu2 = Student("小红",19)
print(stu1.name)
print(Student.school)
print(stu1.introduce()) # 调用对象的方法
print(stu2.introduce())
school是类属性,所有该类的对象共享同一个类属性,修改后所有对象的值都会改变
实例属性(在_init_方法中),以self开头,属于具体的对象
- 特性:
1、封装:把数据(属性)和操作数据的方法"打包"在一起,对外隐藏内部细节
2、继承:子类可以继承父类的属性和方法,实现代码复用
例如定义一个通用的 User 类(有名字、电话),然后创建 Student 类和 Teacher 类继承它。学生和老师都有名字和电话,不需要重复写代码。
3、多态:不同的对象,可以用相同的方式调用。
例如Student 和 Teacher 都有一个 speak() 方法。当你调用 person.speak() 时,学生说"老师好",老师说"上课了",虽然方法名一样,但表现不同。