让 Python 起飞的 24 个骚操作! Python加速的技巧有很多,这篇文章总结了24个,查缺补漏,每天学会一个新的小技巧 一、分析代码运行时间 第1式:测算代码运行时间 平凡方法 快捷方法(jupyter环境) 第2式:测算代码多次运行平均时间 平凡方法 快捷方法(jupyter环境) 第3式:按调用函数分析代码运行时间 平凡方法 快捷方法(jupyter环境) 第4式:按行分析代码运行时间 平凡方法 快捷方法(jupyter环境) 二、加速你的查找 第5式:用set而非list进行查找 低速方法 高速方法 第6式:用dict而非两个list进行匹配查找 低速方法 高速方法 三、加速你的循环 第7式:优先使用for循环而不是while循环 低速方法 高速方法 第8式:在循环体中避免重复计算 低速方法 高速方法 四、加速你的函数 第9式:用循环机制代替递归函数 低速方法 高速方法 第10式:用缓存机制加速递归函数 低速方法 高速方法 第11式:用numba加速Python函数 低速方法 高速方法 五、使用标准库函数进行加速 第12式:使用collections.Counter加速计数 低速方法 高速方法 第13式:使用collections.ChainMap加速字典合并 低速方法 高速方法 六,使用numpy向量化进行加速 第14式:使用np.array代替list 低速方法 高速方法 第15式:使用np.ufunc代替math.func 低速方法 高速方法 第16式:使用np.where代替if 低速方法 高速方法 七、加速你的Pandas 第17式:使用np.ufunc函数代替applymap 低速方法 高速方法 第18式:使用预分配存储代替动态扩容 低速方法 高速方法 第19式:使用csv文件读写代替excel文件读写 低速方法 高速方法 第20式:使用pandas多进程工具pandarallel 低速方法 高速方法 八、使用Dask进行加速 第21式:使用dask加速dataframe 低速方法 高速方法 第22式:使用dask.delayed进行加速 低速方法 高速方法 九、应用多线程多进程加速 第23式:应用多线程加速IO密集型任务 低速方法 高速方法 第24式:应用多进程加速CPU密集型任务 低速方法 高速方法 转自:https://mp.weixin.qq.com/s/WGybhEO4gtc_uWa_N6aWoA