Python的含义是什么?

2024-06-25 23:15:04 发布

您现在位置:Python中文网/ 问答频道 /正文

在许多网站上,我经常看到这样的评论:代码不是pythonic,或者有一种更像pythonic的方法来实现相同的目标。

在这种情况下,Python是什么意思?例如,为什么

while i < someValue:
   do_something(list[i])
   i += 1

不是Python

for x in list:
   doSomething(x)

是Python吗?


Tags: 方法代码in目标for网站评论情况
1条回答
网友
1楼 · 发布于 2024-06-25 23:15:04

利用Python语言的特性生成清晰、简洁和可维护的代码。

Pythonic指的是不只是正确语法的代码,而是遵循Python社区的惯例并按照预期的方式使用该语言的代码。

这也许是最容易用否定的例子来解释的,就像其他答案中的链接文章一样。不通顺代码的例子通常来自于其他语言的用户,他们不学习Python编程模式,比如列表理解或生成器表达式,而是试图在C或java中更常用的模式中使用crowbar。循环尤其是常见的例子。

例如在Java中,我可能使用

for i in (i; i < items.length ; i++)
 {
  n = items[i];
 ... now do something
 }

在Python中,我们可以尝试使用while循环来复制它,但是使用while循环会更干净

for i in items:
  i.perform_action()

或者,甚至是一个生成器表达式

(i.some_attribute for i in items)

所以本质上,当有人说某件事不符合语法时,他们是说代码可以用更适合pythons编码风格的方式重新编写。

在命令行键入import this可以总结Python的原理。不太为人所知的是,import this的源代码是绝对的,而且从设计上讲,是不通顺的!看一看它作为不该做什么的例子。

相关问题 更多 >