90%的人说Python程序慢,5大神招让你的代码像赛车一样跑起来_代码需要跑很久怎么办(1)

简介: 90%的人说Python程序慢,5大神招让你的代码像赛车一样跑起来_代码需要跑很久怎么办(1)


4.巧妙的用try/except语句

很多时候在一个for循环内部,对i进行计算,然后添加到一个list里面,如果能巧妙地利用try/except,可以摆脱对if/else检查的开销,从而提高性能。

5.神器collection模块

collection库提供了很多模块,这些模块非常有用,有一些模块是跟容器有关,大部分的实战项目我们都会用到。比如deque双向队列和defaultdict缺省字典。

1).双向队列deque

deque是双向队列,如果你的业务逻辑里面需要大量的从队列的头或者尾部删除,添加,用deque的性能会大幅提高!如果只是小队列,并且对元素需要随机访问操作,那么list会快一些。

2).缺省字典defaultdict

对于字典的使用,我们要学会用defaultdict来代替,一来是因为有缺省值非常安全,如果访问不存在的key,不会报错;二来是Pyhon性能会大幅提高。

仅仅换了字典数据结构,性能就大幅的提高了3倍。

Python里面的技巧还是很多的,尤其是性能优化这块,Py3已经比Py2性能上高了许多,如果我们在平时写代码的时候,能多一份思考,代码不仅能work还能提升性能,相信你经常这样思考,慢慢的就会成为高手啦!

最后

作为一个IT的过来人,我自己整理了一些python学习资料,都是别人分享给我的,希望对你们有帮助。

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。

朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】


相关文章
|
关系型数据库 数据处理 数据库
实时计算 Flink版产品使用合集之支持哪些数据库的整库同步
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStreamAPI、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
11月前
|
安全 API UED
WebSocket API 中的 close 事件是如何触发的?
【10月更文挑战第26天】close事件的触发涵盖了从正常的连接关闭到各种异常情况导致的连接中断等多种场景。通过监听close事件,开发人员可以在连接关闭时进行相应的处理,如清理资源、更新界面状态或尝试重新连接等,以确保应用程序的稳定性和良好的用户体验。
|
12月前
|
数据采集 前端开发 Python
Python pygame 实现游戏 彩色 五子棋 详细注释 附源码 单机版
Python pygame 实现游戏 彩色 五子棋 详细注释 附源码 单机版
235 0
|
机器学习/深度学习 人工智能 数据可视化
号称能打败MLP的KAN到底行不行?数学核心原理全面解析
Kolmogorov-Arnold Networks (KANs) 是一种新型神经网络架构,挑战了多层感知器(mlp)的基础,通过在权重而非节点上使用可学习的激活函数(如b样条),提高了准确性和可解释性。KANs利用Kolmogorov-Arnold表示定理,将复杂函数分解为简单函数的组合,简化了神经网络的近似过程。与mlp相比,KAN在参数量较少的情况下能达到类似或更好的性能,并能直观地可视化,增强了模型的可解释性。尽管仍需更多研究验证其优势,KAN为深度学习领域带来了新的思路。
5245 5
|
Web App开发 Linux 编译器
Linux基于webRTC的二次开发(一)
Linux基于webRTC的二次开发(一)
|
Python
【python】pygame实现贪吃蛇小游戏(附源码,带注释)
【python】pygame实现贪吃蛇小游戏(附源码,带注释)
1960 1
|
资源调度 PyTorch 算法框架/工具
pytorch 如何生成指定位置、尺度参数的随机高斯矩阵,并指定这个随机矩阵的形式
在上述代码中,我们使用 torch.normal(mean=mu, std=sigma, size=(m, n)) 函数直接生成了一个形状为 (m, n) 的随机高斯矩阵 data,其中 mean 参数指定了均值,std 参数指定了标准差。 需要注意的是,与 torch.randn() 不同,torch.normal() 生成的是具有指定均值和标准差的高斯分布,因此生成的随机矩阵不一定是标准正态分布。如果需要生成标准正态分布随机矩阵,可以将 mean 参数设置为 0,std 参数设置为 1。
1443 1
|
Kubernetes 开发工具 Docker
(二)Docker Desktop及Kubernetes安装
(二)Docker Desktop及Kubernetes安装
|
算法
铰接式车辆的横向动力学仿真提供车辆模型研究(Matlab代码实现)
铰接式车辆的横向动力学仿真提供车辆模型研究(Matlab代码实现)
341 0