Python学习笔记
学习来源说明:本文档是博主在Python速成考试期间,观看B站UP主「林粒粒呀」的视频《3小时超快速入门Python | 动画教学【2025新版】【自学Python教程】【零基础Python】【计算机二级Python】【Python期末速成】》所做的学习笔记。
图片声明:本文档中的所有图片均来自上述视频截图。
更多print

字符串连接
1 | print(“Hel1o” + “ world” + “!”) |
输出结果:Hello world!
单双引号转义
即通过 \ 告诉计算机 “ or ‘ 是纯符号 不算字符串
1 | print("He said \"Let\'s go!\"") |
输出结果:He said "Let's go!”
换行
1 | print("Hello! \nHi!") |
输出结果:Hello!
Hi!
三引号跨行字符串
1 | print("""君不见,黄河之水天上来,奔流到海不复回。 |
Python变量
不能空格 不能数字开头 不能有引号
| 形式 | 对错 | 原因 |
|---|---|---|
| my_love | √ | |
| my love | × | 空格 |
| 1my_love | × | 数字开头 |
| “1my_love” | × | 引号 |
| my_love! | × | 有其他符号 |
Python命名规则
Python3支持中文命名 但在输出时可能会乱码
下划线命名法
1 字母全部小写
2 不同单词用下划线分隔user_age user_gender
驼峰命名法
单词用首字母大写分隔
UserAge UserGender
Python数学运算
| 名称 | 符号 |
|---|---|
| 加 | + |
| 减 | - |
| 乘 | ** |
| 除 | / |
| 取整除 - 往小的方向取整数 | // |
| 取余 | % |
| 次方 | ** |
import math 导入数学库
math.函数名(…)
Python注释
#号 单行注释 “”” “”” 三引号多行注释
vscode中按 ctrl + / 进行快速注释
Python数据类型
| 例子 | 类型 |
|---|---|
| “Hello” | 字符串 str |
| 6 | 整数 int |
| 6.0 | 浮点数 float |
| True | 布尔类型 bool |
| None | 空值类型 NoneType |
Python交互模式
命令行模式
平时的python文件
交互模式
读一行执行一行

Python input
其实就是C++的cout
但在python中是可以用变量去承接用户输入的内容 但这个变量会默认是字符串 即使你输入的是数字
1 | user_age = input("请输入你的年龄:") |
但我们无法控制用户仅输入数字 可以给用户提示信息 但可能会有人觉得不美观
这时我们可以引入一个库 用正则表达
re.search(r'\d+', user_input)从用户输入的字符串中查找第一个连续的数字序列\d+表示匹配一个或多个数字
1 | import re |
Python条件语句
和C++的条件判断差不多 但需要注意缩进
| 名称 | 符号 |
|---|---|
| 赋值 | = |
| 相等 | == |
| 恒等(在python中不存在) | === |
| 海象运算符 | := |
| 不等于 | != |
| 大于等于 | >= |
| 小于等于 | <= |
1 | # 海象运算符讲解 |
1 | if[条件]: |
Python嵌套/多条件判断
1 | #嵌套 |

Python逻辑运算
运算优先级 not > and > or
| 名称 | 符号 |
|---|---|
| 与 | and |
| 或 | or |
| 非 | not |
Python列表
相当于C++中的数组,并且自带相关方法
方法与函数的区别:方法是 对象.方法名(…) 函数是 函数名(对象)
1 | shopping_list =["键盘","键帽”] |
| 方法 or 函数 | 作用 |
|---|---|
| shopping_list.append(“显示器”) | 往列表里面添加东西 |
| shopping_list.remove(“显示器”) | 删除列表的东西 |
| sorted(num_list) | 将列表排序好 |
Python字典
存储键值对
1 | # 常见形式 |
Python for循环
和C++中的for循环有很大的区别 C++中你是可以通过i去控制其循环的方式的 但python不能(这里的不能指的是不能中途去改变i的值)
1 | # Python:无法在循环中直接修改迭代对象,但c++可以 |
1 | for 变量名 in 可迭代对象: |
| 方法 | 功能 |
|---|---|
| 字典.keys() | 所有键 |
| 字典.values() | 所有值 |
| 字典.items() | 所有键值对 |
Python while循环
和C++的差不多

Python 格式化字符串
format方法
里面的数字表示会用里面的第几个参数去替换
或者是直接用变量名
其中format方法可以直接将数字转为字符串 并且通过.xf控制精确到第几位小数点



f-字符串

Python函数(上)
也是和C++的差不多 但是通过def去定义

Python函数(下)
记得往里面加return 不加的话 默认是返回None
Python引入模块
第三种不推荐 因为有时候两个模块(包)可能会有重复的函数名 会冲突 或者引入了用不上的函数
引用第三方库 pip instal 库名

Python创建类(上)
和C++的差不多 先创类 然后 ____init(self)相当于构造函数 self不用传入对象进去 相当于说是对象本身

Python创建类(下)
和C++的区别是 方法是在类中定义的 不需要声明 并且有个小知识点是 “字符串” * X就打印X次字符串

Python类继承
和C++差不多 但这里人和猫的尾巴属性不一样 如果我们在子类使用 ____init(self) 就会优先调用子类的构造函数而不是调用父类的构造函数 如果在子类的构造函数上加年龄和性别的话又会代码重复 这时我们就会选择super. __init(self)告诉程序 你给我去调用父类函数的构造函数先 class 类名(父类名)

Python文件路径
绝对路径和相对路径
Python文件操作(上)
1 | # open是方法 然后到路径 权限 编码 |

Python文件操作(下)
w是写 如果之前就存在文件 会覆盖之前的文件 补修覆盖就使用a(附加)但这两个都不能读 这时候r+就表示读写
1 | open("./data.txt", "r" encoding="utf-8") as f # 指如果没有这个文件 就会创建这个文件并命名为f |
Python异常处理
| 名称 | 意义 |
|---|---|
| IndentationError | 缩减错误 |
| ImportError | 导入模块错误 |
| ArithmeticError | 计算错误 |
| SyntaxError | 语法错误 |
| IndexError | 索引错误 |
| ZeroDivisionError | 分母为零错误 |
| AttributeError | 属性错误 |
| ValueError | 值错误 |
| KeyError | 键错误 |
| ZeroDivisionError | 分母为零错误 |
通过try except去拦截报错 会从上至下执行

Python测试(上)
调库进行测试
python中自带assert 后面跟表达式 如果是False 会返回AssertionError断言错误 一旦有这个错误就会终止
import unittest 引用unittest这个库
from 文件名 import 函数名/类名
继承unittest中的一个类 并在其中写方法 命名要以test_ 开头 unittest会自动检索test_ 开头的文件
在终端输入python -m unittest

Python测试(下)

Python高阶和匿名函数
高阶函数就算往一个函数里面传函数 calculate_and_print(3, calculate_square)
匿名函数就是有些函数 只用一次 去定义的话就很麻烦 直接只写一次 写完就扔

