有用的现代 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/288939.html