首页 > Python基础教程 >
-
24式加速你的Python
来源:Python与算法之美
ID:Python_Ai_Road
作者:梁云1991
一,分析代码运行时间
第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式,使用预分配存储代替动态扩容
低速方法

高速方法
