二手物品交换网站建设,做木材生意的外贸网站,自己怎么做电商,wordpress自定义参数Python 期末知识点汇总
本文聚焦 Python 期末考核核心知识点#xff0c;从基础到进阶分层梳理#xff0c;覆盖语法、数据结构、流程控制、函数、面向对象、文件操作、异常处理等高频考点#xff0c;适合期末复习冲刺。
一、基础语法#xff08;必考#xff09;
1. 编码规范…Python 期末知识点汇总本文聚焦 Python 期末考核核心知识点从基础到进阶分层梳理覆盖语法、数据结构、流程控制、函数、面向对象、文件操作、异常处理等高频考点适合期末复习冲刺。一、基础语法必考1. 编码规范与执行PEP 8 规范缩进用 4 个空格、单行代码不超过 79 字符、变量命名小写 下划线如student_name、常量全大写如MAX_NUM。执行方式交互式终端输入python进入直接执行代码脚本式编写.py文件终端执行python 文件名.py模块导入import 模块名导入后执行模块内代码if __name__ __main__仅脚本直接运行时执行内部代码。注释单行# 注释内容多行多行注释/多行注释。2. 变量与数据类型变量特性动态类型无需声明类型赋值即定义如a 1、a hello同一变量可改类型。基本数据类型类型示例关键考点整数 (int)10、-5支持加减乘除、取模 (%)、幂 (**)浮点数 (float)3.14、2.0精度问题如0.10.2≠0.3字符串 (str)abc、123不可变、索引 (s[0])、切片 (s[1:3])、拼接 ()、重复 (*)布尔值 (bool)True、False本质是 int 子类True1False0支持and/or/not空值 (None)None与 0、空字符串、空列表不等价类型转换int()、float()、str()、bool()空值 / 0 转False非空 / 非 0 转True。3. 复合数据类型核心类型定义方式可变性核心操作考点列表 (list)[1, a, [2,3]]可变索引、切片、append()、pop()、remove()、sort()增删改查、列表推导式元组 (tuple)(1, a)、(2,)不可变索引、切片、count()、index()不可变性、元组解包a,b(1,2)字典 (dict){name:Tom, age:18}可变d[key]、keys()、values()、items()、get()键值对操作、键的唯一性集合 (set){1,2,3}可变add()、remove()、交集 ()、并集 ()、差集(-)二、流程控制必考1. 条件判断\# 基础格式 if 条件1: #x20; 代码块1 # 缩进4空格 elif 条件2: #x20; 代码块2 else: #x20; 代码块3条件表达式比较运算符、!、、、、逻辑运算符and与、or或、not非成员运算符in存在、not in不存在身份运算符is内存地址相同、is not注意判断值is判断地址。2. 循环结构1for 循环遍历可迭代对象\# 遍历range for i in range(1, 10, 2): # 起始1结束10不含步长2 #x20; print(i) \# 遍历列表/字典 for item in \[1,2,3]: #x20; print(item) for k, v in {a:1, b:2}.items(): #x20; print(k, v)2while 循环条件循环i 0 while i 5: #x20; print(i) #x20; i 1 # 必须修改条件变量避免死循环3循环控制break终止整个循环continue跳过当前轮次进入下一轮else循环正常结束未被break终止时执行。三、函数高频考点1. 函数定义与调用def 函数名(参数列表): #x20; 文档字符串函数说明可选 #x20; 函数体 #x20; return 返回值 # 无return则返回None \# 调用 result 函数名(参数)2. 参数类型核心考点参数类型示例说明位置参数def add(a,b): ...→add(1,2)按参数定义顺序传递关键字参数add(a1, b2)按参数名传递可打乱顺序默认参数def add(a, b0): ...定义时指定默认值调用时可省略可变参数def func(*args, **kwargs): ...*args接收任意位置参数元组**kwargs接收任意关键字参数字典3. 函数高级特性匿名函数lambdalambda 参数: 表达式单行函数如lambda x: x*2计算 x 的 2 倍。作用域LEGB 规则局部→嵌套→全局→内置global修改全局变量nonlocal修改嵌套作用域变量。递归函数函数调用自身必须有终止条件如阶乘def fact(n): return 1 if n1 else n*fact(n-1)。四、面向对象编程OOP重点1. 类与对象的定义class Person: #x20; # 类属性所有实例共享 #x20; species 人类 #x20; #x20; #x20; # 构造方法初始化实例属性 #x20; def \_\_init\_\_(self, name, age): #x20; self.name name # 实例属性 #x20; self.age age #x20; #x20; #x20; # 实例方法self指向当前实例 #x20; def say\_hello(self): #x20; print(f我是{self.name}今年{self.age}岁) #x20; #x20; #x20; # 类方法cls指向类 #x20; classmethod #x20; def show\_species(cls): #x20; print(cls.species) \# 创建对象实例化 p1 Person(Tom, 18) p1.say\_hello() # 调用实例方法 Person.show\_species() # 调用类方法2. 三大特性封装隐藏内部实现通过方法访问属性如get_name()/set_name()伪私有属性__attr实际重命名为_类名__attr。继承子类继承父类属性和方法class Student(Person): ...通过super().__init__()调用父类构造方法支持多继承遵循 MRO 顺序。多态不同子类重写父类方法调用时表现不同行为如Cat和Dog都重写Animal的speak()方法。3. 常用魔术方法方法作用__init__初始化实例__str__打印对象时返回自定义字符串__len__实现len(对象)的功能五、文件操作必考1. 基础读写推荐 with 语句自动关闭文件\# 读文件r只读utf-8编码避免中文乱码 with open(test.txt, r, encodingutf-8) as f: #x20; content f.read() # 读取全部内容 #x20; # line f.readline() # 逐行读取 #x20; # lines f.readlines() # 读取所有行到列表 \# 写文件w覆盖写入a追加写入 with open(test.txt, w, encodingutf-8) as f: #x20; f.write(Hello Python\n) # 写入字符串 #x20; f.writelines(\[第一行\n, 第二行\n]) # 写入多行列表2. 打开模式速记模式说明r只读默认w写入覆盖原有内容a追加在文件末尾写入b二进制模式如 rb、wb读写模式如 r、w六、异常处理必考1. 基础语法try: #x20; # 可能出错的代码 #x20; num int(input(请输入数字)) #x20; print(10 / num) except ValueError: #x20; print(输入的不是数字) except ZeroDivisionError: #x20; print(不能除以0) except Exception as e: # 捕获所有异常兜底 #x20; print(f出错了{e}) else: # 无异常时执行 #x20; print(执行成功) finally: # 无论是否异常都执行如关闭文件 #x20; print(程序结束)2. 常见异常类型SyntaxError语法错误编写时就会报错NameError变量未定义TypeError类型不匹配如字符串 数字IndexError列表索引越界KeyError字典键不存在FileNotFoundError文件不存在。七、进阶高频考点1. 推导式简洁高效常考列表推导式[x*2 for x in range(10) if x % 2 0]生成偶数的 2 倍列表字典推导式{k: v1 for k, v in {a:1, b:2}.items()}集合推导式{x for x in [1,2,2,3]}去重。2. 字符串格式化常考f-stringPython3.6推荐f姓名{name}年龄{age}format 方法姓名{}年龄{}.format(name, age)占位符姓名%s年龄%d % (name, age)。3. 模块与包模块导入import 模块名、import 模块名 as 别名、from 模块名 import 函数/类常用内置模块os文件 / 路径操作os.path.join()、os.mkdir()datetime日期时间处理datetime.datetime.now()random随机数生成random.randint(1,10)re正则表达式匹配、替换字符串。