Py学习  »  Python

Python编程方面的一些骚操作

python • 6 年前 • 435 次点击  

1. list切片的技巧 somelist[start:end:stride]

2. 多使用列表表达式

3. 数据量大的时候尽量使用生成器表达式代替列表表达式

4. 使用enumerate代替range

5. 合理利用try/except/else/finally

6. 线程方面的---使用concurrent.futures,实现并行计算

# 第一种的结果: 1.4s

# 第二种的结果: 0.4s

# 结果的提升是肯定有的,但是和网络情况有关系。


# 关于导入的包 concurrent.future

# 对于这个包里面的ThreadPoolExecutor和multiprocessing的Pool对比,作用实际上差不多,具体时间差异我还没怎么测试过.

# 但是如果你认真看源码的话会发现,实际上future的包在process的那一块也是调用multiprocessing的

# 按照源码的意思就是在子线程中运行多个python的解释器,从而实现并行.

# 但是一般的代码或者多线程爬虫上基本体会不出,因为爬虫的核心还是在网络速度上,而一般的代码也没必要

# 除非计算矩阵或者其他的需要巨大计算量的时候再考虑使用.

7. 与分析方面有关的---重视精度时使用decimal

8. 协作开发的时候尽量不要写import *

你的代码在导包的时候写了import *,你自己开发是很明白有什么方法的.
但是在协作开发或者开源项目的时候尽量避免.
因为其他开发者并不知道里面的方法是干啥的.

9. 配置文件独立化

# 例如一些数据库的配置,selenium的webdriver的配置,甚至开发的模式配置可以通过一些json格式的配置文件进行维护.

# 好处1: 在于这样管理项目不用"东奔西跑",为了一个全局变量找半天

# 好处2: 在协同开发的时候,可以不用变动的代码的情况下,根据自己的开发环境确定一些全局配置

# 缺点的话,实际上也算不上缺点.就是每次都要读取一次配置文件,代码的速度会减慢一点点,但是并不碍事.

作者:NullSpider

源自:https://juejin.im/post/5a17d1a6f265da432d27c871

声明:文章著作权归作者所有,如有侵权,请联系小编删除




今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/Y5XiJ0Y14Q
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/4337
 
435 次点击