python运行速度究竟慢不慢

想写这篇博客的原因是因为今天在一个群里和两个小伙伴讨论到了这个问题,我的认知是很多人对于Python这门语言有或多或少的误解,今天我就从底层逻辑的角度来简单说明一下Python为什么不比C类语言(C,C++,C#等)运行速度慢。

首先我们应该理解一点,Python语言本身的很多库也是基于C类语言进行开发的。这些库本身就相当于是封装了C类语言本身,那么我们说这些库运行的速度会比C类语言慢吗?答案当然是不会,因为两个本身就是同一种东西。所以Python这门语言更像是一个调用API接口的语言。

其次,实际中我们如果测试一些Python代码的运行时间,我们会发现确实速度比C类语言"慢"很多,这又是为什么呢?原因是大部分我们写出来的Python代码都会难以避免地使用循环体结构。比如库内有一个函数已经使用了循环体结构,循环了100次,这时我们在调用这个库函数后又使用了循环体结构,循环100次,这时代码的执行次数就会变为100 * 100 =10000次。这将会大大地提高代码运行的时间。因此如果我们在书写Python代码的时候能够尽量避免使用循环体结构,那么Python代码的运行速度一定不会比C类语言的运行速度慢!

那么是不是所有的Python代码都可以去掉循环体结构呢?这里我个人并不是百分百确定所有代码都可以,但是可以负责任地说,绝大部分Python代码都可以采用一些Pythonic的代码书写技巧来去掉循环体。

去掉循环体的常用手段:数组切片(这是一个神器,初学者和老手的差异很大)

此外,Python现在的代码加速方面做的也越来越好了,可以提升Python代码运行速度的手段也越来越多了。除了在书写Python代码的时候从逻辑出发优化代码本身,也可以使用一些外部工具来解决。

可以提升Python代码运行速度的工具PyPy, Numba

此外小编认为,一门语言的好坏主要取决于使用这门语言的人数。更重要的是取决于使用这门语言的"攻城狮们"。请不要轻易地批评一门语言,毕竟存在即合理,更不要提多次登上排行榜首位的Python

码字不易,如果大家觉得有用,请高抬贵手给一个赞让我上推荐让更多的人看到吧~

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

勤奋的大熊猫

你的鼓励将是我写作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值