gpt4 book ai didi

python - 为什么 python 列表理解有时不受欢迎?

转载 作者:太空狗 更新时间:2023-10-29 20:33:06 25 4
gpt4 key购买 nike

我遇到的许多开发人员建议最好使用简单的循环和 if 条件而不是一行列表理解语句。

我一直觉得它们非常强大,因为我可以在一行中放入很多代码,而且它可以避免创建很多变量。为什么它仍然被认为是一种不好的做法?

(慢吗?)

最佳答案

列表理解用于创建列表,例如:

squares = [item ** 2 for item in some_list]

对于列表(或其他对象)的元素做某事,For 循环更好:

for item in some_list:
print(item)

通常不赞成使用对其副作用的推导式或用于创建列表的 for 循环。


这里的一些其他答案提倡一旦理解变得太长就将其转变为循环。我不认为这是好的风格:创建列表所需的 append 调用仍然很难看。相反,重构为一个函数:

def polynomial(x):
return x ** 4 + 7 * x ** 3 - 2 * x ** 2 + 3 * x - 4
result = [polynomial(x) for x in some_list]

只有当您关心速度时——并且您已经完成了分析! – 你应该保持冗长的、不可读的列表理解。

关于python - 为什么 python 列表理解有时不受欢迎?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8068251/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com