温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

编写更简洁Python代码的技巧有哪些

发布时间:2021-10-29 11:28:02 来源:亿速云 阅读:150 作者:iii 栏目:编程语言

这篇文章主要介绍“编写更简洁Python代码的技巧有哪些”,在日常操作中,相信很多人在编写更简洁Python代码的技巧有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”编写更简洁Python代码的技巧有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

1.列表,字典和集合理解

列表理解是许多Python程序员最喜欢的功能之一。 这是从迭代器创建列表对象的非常简洁的方法。 基本语法为[可迭代的x表达式]。  让我们看一些示例以了解其用法。

如您所见,在不使用列表推导的情况下,我们必须创建一个空列表,并通过运行for循环来添加每个数字的平方,这需要三行代码。  相比之下,我们只使用一行代码就可以通过列表理解来构建相同的正方形列表。 那不是很酷吗?

除了列表理解之外,还有字典和集合理解。  字典理解具有以下基本语法{key_expr:用于iterable中的x的value_expr},而对于集合理解,其基本语法是{用于x中的iterable的表达式}。  让我们在下面看一些简单的例子。 与列表理解示例类似,将花费多行代码来构建所需的字典并进行设置,而无需使用理解技术。

2.将元组命名为数据结构

我们知道元组对于存储一些相关数据很有用。 但是,使用它们并不是很方便,尤其是在访问特定元素方面,因为我们必须记住顺序并使用特定元素的正确索引。

尽管如果不想使用元组,我们可以建立一个自定义类来管理相关数据,但是namedtuple数据类型可以是非常有用的轻量级数据结构。  通过集合模块可用,namedtuple数据类型采用以下基本语法:namedtuple(Typename,field_names)。  语法虽然不太简单,但实际上从概念上很容易理解。

让我们看一些相关的例子。 理想的功能是创建一个数据结构,该结构可以存储学生的信息,包括姓名,性别和学生ID号码。

如您所知,使用namedtuple,我们可以使用更简洁的代码编写轻量级的数据结构。 当然,应该注意,自定义类为您提供了可以操纵的更多功能。  但是,如果您的目的只是创建用于数据存储和检索目的的数据结构,则绝对可以考虑使用namedtuple。

3.使用enumerate()和zip()进行迭代

编码的一项重要原则是DRY,它代表"不要重复自己"。  当我们处理一系列数据(例如数字列表)时,这是一项常见的任务,我们需要对列表中的每个数字执行相同的操作。  为了避免重复相同的代码,我们可以使用for循环来运行整个列表的迭代。

当我们迭代列表或任何序列时,有时我们还需要知道项目在序列中的位置。 有两种方法可以做到这一点。 让我们看看它们是什么。

如您所见,通过使用内置函数enumerate(),我们可以轻松地访问序列中的索引和元素,这比第一次迭代更简洁。  更重要的是,它可以设置一个起始数字进行计数。 在上面的示例中,我们将其设置为1。

除了enumerate()函数外,zip()函数在迭代中也很有用。 此函数能够从多个可迭代对象创建元组,而无需显式创建这些可迭代对象的复合可迭代对象。  听起来有些混乱,但是我们可以在下面的示例中看到它的用法。

基本上,zip()函数的作用是在每次迭代中从可迭代对象中获取每个元素,以依次形成一个元组。 该代码比冗长的代码更简洁,可读性更好,不是吗?

4.使用f字符串格式化字符串

字符串是一种基本的数据类型,我们几乎在任何地方都使用它们。 字符串的一项基本应用是将它们以某种格式使用。  有几种格式化字符串的方法,为此,我想介绍一下f字符串。

简而言之,f字符串是内插的字符串文字,使用字母f(或F)作为字符串文字的前缀。 为了编写简洁的代码,我将仅向您展示两个首选f字符串的用例。

  • 显示变量。 最基本的用法是显示一些变量的值,以便在开发过程中进行调试。 如果使用传统的format()方法,则需要更长的时间。

  • 连接变量/连接字符串。 f字符串不是直接使用+符号和字符串的join()方法,而是用于字符串串联的非常简单的方法,并且具有优质的可读性。  实际用途包括构造文件路径,如下例所示。

5. Lambda函数

Lambda函数是Python中的匿名函数,通常在需要小的操作的地方使用。  Lambda函数可以采用一个或多个参数,并且具有单个表达式,并且具有以下语法Lambda参数:expression。

我将仅使用内置的sorted()函数来演示lambda函数的用法。 具体来说,sorted()函数使用key参数指定的key函数对可迭代对象进行排序。  我将向您展示,我们可以将lambda函数用作键参数,而不是使用def关键字声明常规函数。

到此,关于“编写更简洁Python代码的技巧有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI