iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >让Python程序变慢的坏习惯有哪些
  • 468
分享到

让Python程序变慢的坏习惯有哪些

2023-07-06 05:07:30 468人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要讲解了“让python程序变慢的坏习惯有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“让Python程序变慢的坏习惯有哪些”吧!1.不要导入根模块在使用 Python 时,我

这篇文章主要讲解了“让python程序变慢的坏习惯有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“让Python程序变慢的坏习惯有哪些”吧!

1.不要导入根模块

在使用 Python 时,我们无法避免的一件事是导入模块,无论是内置模块还是第三方模块。有时,我们可能只需要该模块中的一个或几个函数或对象。在这种情况下,我们应该尝试只导入我们需要的函数或对象,而不是导入根模块。

这是一个简单的例子。假设我们需要计算程序中某些数字的平方根。

较慢的示例

让Python程序变慢的坏习惯有哪些

在不好的例子中,我们导入了 math 模块,并使用 math.sqrt() 来访问该函数。当然,它没有任何问题,但如果我们可以导入 sqrt() 函数,性能会更好。

更快的例子

让Python程序变慢的坏习惯有哪些让Python程序变慢的坏习惯有哪些

2.避免使用点/点链

使用 dot 非常直观。在 Python 中访问对象的属性或函数。大多数时候,没有问题。但是,如果我们可以避免使用点甚至链接点,性能实际上会更好。

下面的示例显示将数字附加到列表中,然后将其删除。

较慢的示例

让Python程序变慢的坏习惯有哪些让Python程序变慢的坏习惯有哪些

更快的例子

让Python程序变慢的坏习惯有哪些让Python程序变慢的坏习惯有哪些

如果你不相信这实际上做同样的事情,我们可以验证它。

让Python程序变慢的坏习惯有哪些

我可以预料到许多 Python 开发人员会跳出来说这个例子中的技术有点荒谬。事实上,即使是我自己,我也很少像上面那样写代码。然而,很高兴知道我们可以这样编程,甚至可以让它更快。

如果我们想附加到一个列表并从中删除数百万次的项目,我们可能应该考虑使用这个技巧。这就是为什么我们需要平衡代码的性能和可读性。

3.不要使用 + 连接字符串

字符串在 Python 中是不可变的。因此,当我们使用"+"将多个字符串连接成一个长字符串时,每个子字符串都是单独操作的。

较慢的示例

让Python程序变慢的坏习惯有哪些

具体来说,对于每个子字符串,它需要请求一个内存地址,然后将它与该内存地址中的原始字符串连接起来,这成为一种开销。

更快的例子

让Python程序变慢的坏习惯有哪些

但是,当我们使用 join() 函数时,该函数事先知道所有子字符串,并且内存地址分配的长度适合最终连接的字符串。因此,没有为每个子串分配内存的开销。

强烈建议尽可能使用 join() 函数。但是,有时我们可能只想连接两个字符串。或者,只是为了方便起见,我们想使用“+”。在这些情况下,使用“+”号会带来更好的可读性和更少的代码长度。

4.不要使用临时变量进行价值交换

许多算法需要两个变量的值交换。在大多数其他编程语言中,这通常是通过引入一个临时变量来完成的,如下所示。

较慢的示例

让Python程序变慢的坏习惯有哪些

更快的例子

但是,在 Python 中,我们不必使用 temp 变量。Python 具有内置语法来实现此值交换,如下所示。

让Python程序变慢的坏习惯有哪些

5.使用 If-Condition 短路

"短路"评估存在于许多编程语言中,Python 也是如此。基本上,它指的是某些布尔运算符的行为,其中仅当第一个参数不足以确定整个表达式的值时才执行或评估第二个参数。

让我们在一个例子中演示这一点。假设我们有一个列表如下。

my_dict = [{'name': 'Alice','age': 28},{'name': 'Bob','age': 23},{'name': 'Chris','age': 33},{'name': 'Chelsea','age': 2},{'name': 'Carol','age': 24}]

我们的工作是对列表进行过滤,找出所有名字以"C"开头,年龄大于等于30岁的人。

较慢的示例

有两个条件都需要同时满足:

  • 名称以"C"开头

  • 年龄≥30 因此,我们可以编写如下代码。

让Python程序变慢的坏习惯有哪些

更快的例子

前面例子中的代码没有任何问题。但是,在这个特殊的虚构示例中,只有"Chris"的年龄在 30 岁以上。

如果我们先写出检查名字的条件,那么满足三个名字(Chris、Chelsea 和 Carol)。然后,将针对所有这 3 个人再次检查有关年龄的第二个条件。

但是,因为短路评估,如果我们先写年龄条件,只有 Chris 的年龄在30岁以上,并且会再次检查他的名字是否以"C"开头。

让Python程序变慢的坏习惯有哪些

在这种情况下,它几乎快了100%。

6.如果可以使用For循环就不要使用While循环

Python 使用了很多 C 来提高性能,即 CPython。在循环语句方面,Python 中的 For-Loop 具有相对较少的步骤,其中更多的步骤作为 C 代码运行,而不是 While-Loop。

因此,当我们可以在 Python 中使用 For-Loop 时,我们不应该使用 while 循环。这不仅是因为 For-Loop 在 Python 中更优雅,而且性能更好。

较慢的示例

让Python程序变慢的坏习惯有哪些

更快的例子

让Python程序变慢的坏习惯有哪些

感谢各位的阅读,以上就是“让Python程序变慢的坏习惯有哪些”的内容了,经过本文的学习后,相信大家对让Python程序变慢的坏习惯有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: 让Python程序变慢的坏习惯有哪些

本文链接: https://www.lsjlt.com/news/357816.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 让Python程序变慢的坏习惯有哪些
    这篇文章主要讲解了“让Python程序变慢的坏习惯有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“让Python程序变慢的坏习惯有哪些”吧!1.不要导入根模块在使用 Python 时,我...
    99+
    2023-07-06
  • Python代码的坏习惯有哪些
    这篇文章主要讲解了“Python代码的坏习惯有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python代码的坏习惯有哪些”吧!一、用列表作函数的默认参数看下面这个例子:正常我们期望的结...
    99+
    2023-06-16
  • Python时操作坏习惯有哪些
    Python时操作坏习惯有哪些,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。很多文章都有介绍怎么写好 Python,我今天呢,相反,说说写代码时的几个坏习惯。有的习惯会让 ...
    99+
    2023-06-02
  • 使用电脑的坏习惯有哪些
    这篇“使用电脑的坏习惯有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“使用电脑的坏习惯有哪些”文章吧。1. 每次开机后的...
    99+
    2023-06-28
  • 写TypeScript代码的坏习惯有哪些
    本篇内容介绍了“写TypeScript代码的坏习惯有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1....
    99+
    2022-10-19
  • 提升Python程序性能的习惯有哪些
    本篇内容介绍了“提升Python程序性能的习惯有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、使用局部变量尽量使用局部变量代替全局变...
    99+
    2023-07-06
  • Python程序员的不良编程习惯有哪些
    这篇文章主要讲解了“Python程序员的不良编程习惯有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python程序员的不良编程习惯有哪些”吧!编程习惯No. 1:使用goto关于禁止使...
    99+
    2023-06-02
  • Python开发中需要摒弃的坏习惯有哪些
    这篇“Python开发中需要摒弃的坏习惯有哪些”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python开发中需要摒弃的坏习...
    99+
    2023-06-28
  • Python程序员所具备的好习惯有哪些
    本篇内容主要讲解“Python程序员所具备的好习惯有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python程序员所具备的好习惯有哪些”吧!良好的时间管理迟到对于任何一家公司都是个头痛的问...
    99+
    2023-06-02
  • TypeScript编写代码时应改正的坏习惯有哪些
    这篇文章主要介绍了TypeScript编写代码时应改正的坏习惯有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.不使用 strict 模式这种习惯看起来是什么样的没有用...
    99+
    2023-06-14
  • .NET程序员得遵守的编码习惯有哪些
    .NET程序员得遵守的编码习惯有哪些,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。小编将为大家介绍二十条.NET程序员不得不遵守的.NET编码习惯。不要硬编string/ ...
    99+
    2023-06-17
  • Java编程中的好习惯有哪些
    这篇文章跟大家分析一下“Java编程中的好习惯有哪些”。内容详细易懂,对“Java编程中的好习惯有哪些”感兴趣的朋友可以跟着小编的思路慢慢深入来阅读一下,希望阅读后能够对大家有所帮助。下面跟着小编一起深入学习“Java编程中的好习惯有哪些”...
    99+
    2023-06-02
  • 提升Python运行性能的习惯有哪些
    本篇内容主要讲解“提升Python运行性能的习惯有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“提升Python运行性能的习惯有哪些”吧!1、使用局部变量使用局部变量替换模块名字空间中的变量...
    99+
    2023-06-02
  • 让Python变快的方案有哪些
    本篇内容介绍了“让Python变快的方案有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Python的运行速度确实没有C或者Java快,...
    99+
    2023-06-15
  • CGI程序的环境变量有哪些
    今天小编给大家分享一下CGI程序的环境变量有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。CGI环境变量所有的CGI程序...
    99+
    2023-06-08
  • 小程序裂变的方式有哪些
    这篇文章主要为大家展示了“小程序裂变的方式有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“小程序裂变的方式有哪些”这篇文章吧。1.社群裂变社群裂变小编梳理为七个关键字:闲聊共享,福利分享,在...
    99+
    2023-06-27
  • 有哪些写Python程序的建议
    这篇文章主要介绍“有哪些写Python程序的建议”,在日常操作中,相信很多人在有哪些写Python程序的建议问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”有哪些写Python程序的建议”的疑惑有所帮助!接下来...
    99+
    2023-06-16
  • 让PHP程序员工作更高效的工具有哪些
    这篇文章主要讲解了“让PHP程序员工作更高效的工具有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“让PHP程序员工作更高效的工具有哪些”吧!Xdebug作为开发人员,睡得最踏实的事是对自...
    99+
    2023-06-17
  • Java程序员应该学习的技术有哪些
    这篇文章主要讲解了“Java程序员应该学习的技术有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java程序员应该学习的技术有哪些”吧!1、DevOps (Docker and Jenk...
    99+
    2023-06-16
  • python程序卡顿的原因有哪些
    Python程序卡顿的原因可能有以下几个方面:1. CPU使用率过高:如果程序中有大量的计算或者循环操作,会导致CPU使用率过高,从...
    99+
    2023-09-04
    python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作