有用的现代 Python 提示和技巧


有用的现代 Python 提示和技巧

有用的现代 Python 提示和技巧

在这里,我提出了我最喜欢的新提示和技巧,甚至它们帮助我以快速且非常有效的方式正确编码。

1.Helper函数中yield的使用

屈服 肯定会节省时间,甚至几行代码。

好的,让我举一个返回平方数的函数示例。现在在这里,流程是这样的: 1. 遍历所有数字。 2. 对每个数字执行平方并将其附加到新变量 3. 最后我们需要返回该列表。

 def square_numbers(数字):  
 新号码 = []  
 对于数字中的数字:  
 squared_number = 数量*数量  
 new_numbers.append(squared_number) 返回 new_numbers

为了摆脱这些事情,让我在 屈服 关键词。

 def square_numbers(数字):  
 对于数字中的数字:  
 产量数*数

哇!现在我们的代码看起来很简单。现在让我们看看如何 屈服 作品。

据我们所知 返回 关键字返回值并停止函数。但是, 屈服 关键字连续返回值,但不会停止函数。有了这个 屈服 我们的函数成为生成器,它返回生成器函数。

 结果 = square_numbers(范围(1, 10))  
 打印(结果)#<generator object square_numbers at 0x7fa02dcc9360>  
 print(list(result)) # [1, 4, 9, 16, 25, 36, 49, 64, 81]

2. 条件检查的链式比较运算符

在我们的编码生活中,有一种情况我们需要比较值,很常见,比如 a < b 和 b < c .所以让我在python中给你一个更好的方法来让它更简单。

 n1 = 1  
 n2 = 5  
 n3 = 10number = (n1 < n2 和 n2

因此,运算符的链接使我们的开发人员生活更轻松。

3. 解构赋值

让我举一个使用解构赋值的最佳例子。假设我们想交换两个数字,那么我们使用第三个变量来交换这两个数字。

 n1 = 5  
 n2 = 10tmp = n1 # 将 n1 分配给 tmp  
 n1 = n2 # 将 n2 的值交换为 n1  
 n2 = tmp # 将 tmp(包含 n1 的值)交换为 n2

在 python 中,我们可以很容易地在一行代码中实现这一点

 n1 = 5  
 n2 = 10n1, n2 = n2, n1

这就是解构赋值的工作原理。

4. 列表推导

在 python 中,您只需一行代码即可遍历列表中存在的项目。

 numbers = [i for i in range(1, 10)]  
 print(numbers) # [1, 2, 3, 4, 5, 6, 7, 8, 9]----OR----numbers = []  
 对于范围内的 i (1, 10):  
 numbers.append(i)  
 print(numbers) # [1, 2, 3, 4, 5, 6, 7, 8, 9]

您还可以将此综合功能用于 字典 , 也是。

5. 使用 默认字典 在蟒蛇

首先让我们谈谈 字典 ,它存储在键值对中,并且键必须是不可变且唯一的。但是在字典中它们是一个问题,当我们尝试访问字典中不存在的键时,它会引发一个 键错误 错误,有时可能会成为问题。

所以为了克服这个问题,Python 支持其他类型的集合,即 默认字典 存在于 收藏品 模块。 默认字典 从不提高 键错误 而不是错误,它返回字典中不存在的键的默认值。

 from collections import defaultdictitems = defaultdict(list) # 声明语句  
 items["n1"] = 1 print(items["n1"]) # 输出:1  
 print(items["n2"]) # output: [] -> 这里 n2 键不存在

在上面的示例中,您可以看到,我们正在尝试访问密钥 n2 字典中不存在 项目 然后它也不会引发错误,而是返回空列表。

就这样, 我希望这些提示和技巧对您的代码有所帮助。感谢您的时间。

谢谢阅读。如果您觉得这篇文章有用,请不要忘记鼓掌并与您的朋友和同事分享。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/30282/22021208

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/python/288939.html

(0)
上一篇 2022年9月12日 08:49
下一篇 2022年9月12日 08:49

相关推荐

发表回复

登录后才能评论