位置: 编程技术 - 正文

python 性能提升的几种方法(python3.10性能)

编辑:rootadmin

推荐整理分享python 性能提升的几种方法(python3.10性能),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:提高python性能,python性能提升5倍 2022,python3.9性能提升,python性能提升多少,python性能提升,python3.9性能提升,python3.9性能提升,python性能提升5倍 2022,内容如对您有帮助,希望把文章链接给更多的朋友!

关于python 性能提升的一些方案。

一、函数调用优化(空间跨度,避免访问内存)

程序的优化核心点在于尽量减少操作跨度,包括代码执行时间上的跨度以及内存中空间跨度。

1.大数据求和,使用sum

2.小数据求和,避免使用sum

结论:大数据求和sum效率高,小数据求和直接累加效率高。

二、for循环优化之取元素(使用栈或寄存器,避免访问内存)

 应尽量避免使用索引。

相当于给每一个元素直接赋值。

三、生成器优化(查表代替运算)

四、幂运算优化(pow(x,y,z)) 

python 性能提升的几种方法(python3.10性能)

结论:pow(x,y,z)优于x**y%z.

五、除法运算优化

结论:divmod优于//和%。

六、优化算法时间复杂度  

算法的时间复杂度对程序的执行效率影响最大,在python中可以选择合适的数据结构来优化时间复杂度,如list和set查找某一个元素的时间复杂度分别是O(n)和O(1)。不同场景有不同的优化方式,总的来说,一般有分治,分支定界、贪心动态规划等思想。

七、合理使用copy和deepcopy  

对于dict和list等数据结构的对象,直接赋值使用的是引用的方式。而有些情况下需要复制整个对象,这时可以使用copy包里的copy和deepcopy,这两个函数的不同之处在于deepcopy是递归复制的。效率不同:

timeit后面的-n表示运行的次数,后两行对应的是两个timeit的输出,下同。由此可见后者慢一个数量级。

关于copy的一个例子:

发生的事情是这样的,[[]]是包含一个空列表的只有一个元素的列表,所以[[]] * 3的所有三个元素都是(指向)这个空列表。修改lists的任何元素都修改这个列表。修改效率高。

八、使用dict或set查找元素

python 字典和集合都是使用hash表来实现(类似c++标准库unordered_map),查找元素的时间复杂度是O(1)。

结论:set 的内存占用量最小,dict运行时间最短。

九、合理使用(generator)和yield(节省内存)

结论:尽量使用生成器去遍历。

标签: python3.10性能

本文链接地址:https://www.jiuchutong.com/biancheng/386211.html 转载请保留说明!

上一篇:浅谈Python 对象内存占用(python的对象)

下一篇:python 实现网上商城,转账,存取款等功能的信用卡系统(python怎么在网上赚钱)

  • 餐饮企业购入的啤酒不拿消费税吗
  • 视同销售是指什么
  • 报税金额和实际做账金额不一样
  • 形式发票需要签字盖章吗
  • 定额发票可以用旧的营业执照发票章吗
  • 旧房转让土地增值税扣除项目
  • 公益机构可以收费吗
  • 科研项目间接费用会计分录
  • 工程保险费属于企业管理费吗
  • 退款给客户怎么记分录
  • 购置股权账务处理流程
  • 企业电话费计入什么科目
  • 哪些计入应收账款
  • 自己承担所有
  • 生产车间员工体检费怎么入账
  • 外籍人士享受满五唯一吗
  • 商业承兑汇票贴现转让
  • 罚款收入增值税税率是多少
  • 咨询费如何入账
  • 车间发生的购买办公用品支出应计入什么账户
  • 创业带动的就业是什么
  • 非居民企业可以享受小微企业所得税优惠政策吗
  • 4s店修车送保养
  • 广告公司发生的费用要计入主营业务成本吗
  • 委托加工物资企业收回自用
  • php数组函数,选班长
  • 固定资产增值税税率
  • uniapp接入支付宝
  • form表单提交数组
  • 如何通过无线路由器连接打印机
  • 圣托里尼岛游玩攻略
  • php自动编号
  • php是面向对象编程吗
  • ChatGPT的火爆出圈,你对它有几分了解?
  • 所得税的期初资产怎么算
  • 上个月的留底税这个使用,会计分录
  • 如何做进项税额明细表
  • 资产减值损失属于营业外支出吗
  • js改变内容
  • 企业境外投资管理
  • 物流辅助服务属于什么科目
  • sql语句重复
  • 新公司申请一般纳税人流程
  • 小规模纳税人给别人开票的税点多少
  • 退税登记怎么办理
  • sql怎么搜索表
  • 应付账款不用付情况说明
  • 其他货币的账面价值包括
  • 绿化工程苗木成活率交工标准
  • 商贸公司购买的水磅怎么入账
  • 公司帐户到银行怎么取钱
  • 纳税筹划有哪些特点以及原则?
  • sqlserver 临时表 准备
  • xp无法创建目录或文件
  • centos怎么连接远程服务器
  • win7下安装XP
  • 老毛桃U盘启动盘工具安装Win8的详细图文教程
  • mac进入睡眠时间长
  • win7系统摄像头不可用怎么办
  • win7指令代码
  • bootstrap栅格布局
  • 原生js实现promise.all
  • jquery的实现原理
  • android自定义控件入门与实战
  • Unity3D游戏开发标准教程
  • js 图片加载
  • jquery遍历li
  • php 时间差
  • 批处理怎么学
  • python的argparse用法
  • 工具类的作用
  • 生产者消费者的作用
  • 工会经费税务机关代收规定
  • 领导班子和领导干部的区别
  • 国家税务总局23号文件
  • 异地车如何查车主信息
  • 通用定额发票分经营类型吗
  • 季度申报表如何填写
  • 90平房子税
  • 没有代理记账资质的公司从事代理记账业务
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设