满满干货!20个Python使用的小技巧

如题所述

第1个回答  2022-07-09

本节对一些 Python 易混淆的操作进行对比。

1.1 有放回随机采样和无放回随机采样

1.2 lambda 函数的参数

1.3 copy 和 deepcopy

复制和变量别名结合在一起时,容易混淆:

对别名的修改会影响原变量,(浅)复制中的元素是原列表中元素的别名,而深层复制是递归地进行复制,对深层复制的修改不影响原变量。

1.4 == 和 is

1.5 判断类型

1.6 字符串搜索

1.7 List 后向索引

这个只是习惯问题,前向索引时下标从0开始,如果反向索引也想从0开始可以使用~。


2.1 读写 CSV 文件

注意,当 CSV 文件过大时会报错:_csv.Error: field larger than field limit (131072),通过修改上限解决

csv 还可以读以 分割的数据

2.2 迭代器工具

itertools 重新定义了很多迭代器工具,例如子序列工具:

序列排序:

多个序列合并:

2.3 计数器

计数器可以统计一个可迭代对象中每个元素出现的次数。

2.4 带默认值的 Dict

当访问不存在的 Key 时,defaultdict 会将其设置为某个默认值。

2.5 有序 Dict

3.1 输出错误和警告信息

向标准错误输出信息

输出警告信息

控制警告消息的输出

3.2 代码中测试

有时为了调试,我们想在代码中加一些代码,通常是一些 print 语句,可以写为:

一旦调试结束,通过在命令行执行 -O 选项,会忽略这部分代码:

3.3 代码风格检查

使用 pylint 可以进行不少的代码风格和语法检查,能在运行之前发现一些错误

3.4 代码耗时

耗时测试

测试某代码块耗时

代码耗时优化的一些原则

4.1 argmin 和 argmax

argmax同理。

4.2 转置二维列表

4.3 一维列表展开为二维列表

相似回答
大家正在搜