Python学习笔记二(函数、类与对象)

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() 时,学生说"老师好",老师说"上课了",虽然方法名一样,但表现不同。
相关推荐
蒸蒸yyyyzwd5 分钟前
cpp选手备战后端学习笔记day6 秋招笔试题
笔记·学习
小柯南敲键盘15 分钟前
跨马翻译:跨境电商批量图片翻译与视频字幕一站式工具
人工智能·python·音视频
卷无止境1 小时前
FastAPI Guard 全解析,从概念到工程落地的实战指南
后端·python
卷无止境1 小时前
FastAPI Users 全面解析:概念、原理与工程实战
后端·python
COOLMO研究AI1 小时前
Python 如何在 AI 接口中实现请求幂等性:防止重复提交与重复扣费
人工智能·python·php
CTA量化套保2 小时前
新手学量化,先做能复查的小流程
人工智能·python
ctlover2 小时前
Python文件操作
开发语言·python
weixin_446260852 小时前
AVA-Encoder:面向智能体原生视频表征学习框架
学习·音视频
DeviceHub2 小时前
硬件工程师选型笔记:ALPS SKPMAPE010 与 Tonevee TS-3025 贴片轻触开关 PIN TO PIN 评估指南
笔记
AndrewHZ2 小时前
图像处理入门(第005期):颜色空间入门——RGB/HSV/CMYK/Lab
图像处理·python·opencv·hsv·rgb·色彩空间