Pythonic 是什么意思?[关闭]
- 2025-01-20 09:07:00
- admin 原创
- 118
问题描述:
在许多网站上,我经常看到一些评论,说代码不符合 Python 风格,或者有更符合 Python 风格的方法来实现相同目标。
在这种情况下,“Pythonic” 是什么意思?例如,为什么
while i < someValue:
do_something(list[i])
i += 1
不是 Pythonic,但
for x in list:
doSomething(x)
是 Pythonic 的吗?
解决方案 1:
利用Python语言的特性来生成清晰、简洁、可维护的代码。
Pythonic 意味着代码不仅语法正确,而且遵循 Python 社区的约定并按照预期使用的方式使用该语言。
这可能最容易通过反面例子来解释,就像其他答案中的链接文章一样。非 Python 代码的示例通常来自其他语言的用户,他们没有学习 Python 编程模式(例如列表推导或生成器表达式),而是试图撬入更常用于 C 或 Java 的模式。循环就是这种模式的特别常见的例子。
例如,在 Java 中我可能会使用
for (int index = 0; index < items.length; index++) {
items[index].performAction();
}
在 Python 中,我们可以尝试使用while循环复制此操作,但使用以下方法会更简洁:
for item in items:
item.perform_action()
或者甚至是一个生成器表达式
(item.some_attribute for item in items)
因此,本质上当有人说某些东西不符合 Python 风格时,他们是在说可以以更适合 Python 编码风格的方式重写代码。
在命令行中输入import this
可以总结 Python 的原则。鲜为人知的是,源代码import this
显然是非 Python 风格的!请查看它以了解哪些做法不可。
相关推荐
热门文章
项目管理软件有哪些?
热门标签
曾咪二维码
扫码咨询,免费领取项目管理大礼包!
云禅道AD