1. Python 程序的扩展名与提示符
扩展名
| |
提示符
| |
请记住三个 > 号。
2. 关于 Python 在变量声明、创建、释放等内存管理与其他语言的差别
变量声明与创建
- 变量无需事先声明
- 变量无需指定类型
- 程序员不用关心内存管理
- 变量名会被“回收”
del语句能够直接释放资源- 大多数编译型语言,变量在使用前必须先声明,但在 Python 中变量在第一次被赋值时自动声明。和其他大多数语言一样,变量只有被创建和赋值后才能被使用。
- 变量一旦被赋值,就可以通过变量名来访问。
内存管理(不确定)
- 在 Python 中,一个对象一旦被创建,它在内存中的大小就是不变的。
- 引用计数 + 垃圾回收机制。
- 参考:Python 内存管理
- Java 和 Python 内存管理机制区别
3. Python 语言命名规则
模块(软件包名)
模块尽量使用小写命名,首字母保持小写,尽量不要用下划线(除非多个单词且数量不多的情况)。
例如:import thisname、import this_name
不规范:import Thisname类名
类名使用驼峰(CamelCase)命名风格,首字母大写,私有类用一个下划线开头。
例如:class Add():、class AddNum():、class _Private():函数
函数名一律小写,如有多个单词,用下划线隔开。
例如:def run():、def add_num():变量名
变量名尽量小写,如有多个单词,用下划线隔开。不能使用关键字(Python 本身已经使用的字)或保留字。
例如:number = 1、school_name = "px"常量
常量使用以下划线分隔的大写命名。
例如:MAX_NUM = 100
4. Python 的多行注释方式
| |
5. 浮点数的科学计数法表示
使用字母
e或E作为幂的符号,以 10 为基数。
例如:4.3e-3即 4.3*10^{-3},值为 0.0043;9.6E3即 9600。
6. pow() 函数
| |
示例:pow(3, 2) → 9pow(10, 3) → 1000
7. round() 函数
| |
示例:round(30.12345) → 30round(-100.123) → -100round(60.12345, 2) → 60.12round(100.0002, 3) → 100.0
8. 字符串切片操作(如 s[3:-3])
| |
示例:str[0:2] → "he"str[:3] → "hel"str[1:] → "ello the world"str[0:-1] → "hello the worl"
str[:-6] → "hello the"
9. Python 代码块以缩进区分
| |
10. Lambda 函数:参数、函数体和返回值
当我们想要使用一个简单定义的、或者只需要调用一两次的函数时,取名比较麻烦,使用 lambda 匿名函数可以省去这一步骤。
| |
11. print 格式化:% 格式化或 format 格式化两种方式
% 格式化
| 符号 | 说明 |
|---|---|
%c | 格式化字符及其 ASCII 码 |
%s | 格式化字符串 |
%d | 格式化整数 |
%o | 格式化八进制数(不能带小数点) |
%x | 格式化十六进制数(不能带小数点) |
%f | 格式化浮点数,可控制小数点后位数 |
%e | 将数字转化成科学计数法形式 |
| |
format 格式化
模板:print('xxx{}x{}x'.format(x,y))
{} 中常用方法:
| 模板 | 说明 |
|---|---|
{:a<3} | 用 a 填充长度为 3,内容靠左(< 左对齐,^ 居中,> 右对齐) |
{:f} | 转换为浮点数(默认保留 6 位小数) |
{:.a} | 控制浮点数保留 a 位小数 |
{:+} | 显示正负号 |
{:e} | 科学计数法 |
{:%} | 转换为百分数 |
{:b} {:d} {:o} {:x} | 二进制、十进制、八进制、十六进制 |
| |
12. IPO(Input Processing Output)模式包含哪些部分
- I(Input,输入):程序的输入(文件输入、网络输入、用户手工输入、随机数据输入、程序内部参数输入等)。例如从键盘接收两个数
a和b,这个过程就是输入。由于input一般接受字符串类型,所以需要使用eval函数去掉字符串两边的引号,使其变为整数类型。 - P(Process,处理):算法,程序的主要逻辑。程序对输入进行处理产生结果,处理方法也叫算法。这是程序的灵魂。
- O(Output,输出):程序的输出(屏幕显示输出、文件输出、网络输出、操作系统内部变量输出等)。
13. 复数:real、imag 各代表哪部分
- 复数由 实部(real) 和 虚部(imag) 构成,形式为
x + yj,其中j或J表示虚部后缀。 - 具体格式:
a + bj,a为实部(real),b为虚部(imag)。
| |
14. 字符串比较规则
| |
is 与 == 的区别
==比较的是 值(value)。is比较的是 内存地址(id)。- 只有数值型和字符串型,且在通用对象池中的情况下,
a is b才为True;否则对于int、str、tuple、list、dict、set等,a is b通常为False。
| |
15. while 循环的使用
参考:Python 中 while 循环讲解【详细】 和 Python 教程:while 循环用法讲解
基本形式:
| |
求和示例:
| |
while 与 else 搭配:当 while 判断条件为 False 时执行 else。
| |
16. 递归调用的终止条件
递归函数停止的条件一般定义在递归函数内部,在递归调用前进行条件判断,根据结果选择继续调用自身还是 return 返回。常见停止条件:
- 判断递归次数是否达到某一限定值。
- 判断运算结果是否达到某个范围等,根据设计目的选择。
附:Python 递归超过一定次数后会抛出异常(报错,终止)。
17. 文件的读写,尤其是 CSV 文件的读写
普通文件读写:
| |
CSV 文件:CSV(Comma-Separated Values)是一种逗号分隔值格式的纯文本文件,用于存储数据。每条记录由换行符分隔,字段间用逗号或其他字符分隔。
| |

18. Request 请求失败的常用做法
- 修改请求头中的 User-Agent(客户端软件类型)。
默认请求头(容易被识别为爬虫):
| |
修改 User-Agent 为浏览器标识:
| |
修改后的请求头:
| |
19. 集合的操作:|、-、&、^
- 集合是无序且无索引的,用花括号
{}表示。 - 集合一旦创建,不能更改元素,但可以添加或删除。
- 集合中不允许有重复元素。
| |
20. 循环保留字:break 与 continue 的差别和作用
break:跳出循环,执行循环之后的语句。continue:终止本次循环,执行下一次循环。
break 示例
| |
continue 示例
| |
21. 伪随机数
- 计算机生成的随机数都是伪随机数。
random模块提供随机数生成功能,可设置随机数种子seed()保证每次运行结果一致。
| |
22. Python 根据命名空间寻找变量的过程
查找顺序:局部命名空间 → 全局命名空间 → 内置命名空间
- 命名空间:从名称(变量名)到对象的映射,大部分通过 Python 字典实现。不同命名空间中的同名标识符不会冲突。
- 作用:避免命名冲突。
- 参考:Python 命名空间的加载与查找顺序
23. 字典的创建和使用
字典通过键值对 key: value 存储数据:
key在同一个字典内不可重复value可以重复
创建方法:
| |
常用操作:
| |
24. 用户输入函数
| |
25. 爬取指定 HTML 标签下的内容
re(正则表达式)bs4(BeautifulSoup4)(老师讲的)xpath
参考: