2010-10-15 67 views
3

如果你谷歌的“pythonic”,你会发现主要是the same three examples。这里有很多关于stackoverflow的问题,要求如何在pythonoic的方式下完成这个和那个,所以一些不错的pythonic代码示例的集合将会很好!你会认为什么做法是“pythonic”?

+3

投票结束:这里没有真正的问题。 – 2010-10-15 13:57:34

+0

http://ideone.com/kMEuL – 2010-10-15 14:07:07

+0

如果它是可读**和**产生预期的输出,它是Pythonic。 – tzot 2010-10-15 19:14:04

回答

5

我在tag description写道:

Pythonic是最地道的Python代码的说明。这不仅意味着代码对于其他程序员来说很容易理解,而且它也是使用Python最有效的方式。

2
>>> import this 
The Zen of Python, by Tim Peters 

Beautiful is better than ugly. 
Explicit is better than implicit. 
Simple is better than complex. 
Complex is better than complicated. 
Flat is better than nested. 
Sparse is better than dense. 
Readability counts. 
Special cases aren't special enough to break the rules. 
Although practicality beats purity. 
Errors should never pass silently. 
Unless explicitly silenced. 
In the face of ambiguity, refuse the temptation to guess. 
There should be one-- and preferably only one --obvious way to do it. 
Although that way may not be obvious at first unless you're Dutch. 
Now is better than never. 
Although never is often better than *right* now. 
If the implementation is hard to explain, it's a bad idea. 
If the implementation is easy to explain, it may be a good idea. 
Namespaces are one honking great idea -- let's do more of those! 
0

“Python化” 只是意味着以下常见的Python成语。

只需按照禅宗的Python

  • 美丽的比丑好。
  • 显式优于隐式。
  • 简单胜过复杂。
  • 复杂比复杂好。
  • Flat比嵌套更好。
  • 稀疏比密集好。
  • 可读性计数。
  • 特殊情况不足以破坏规则。
  • 虽然实用性胜过纯度。
  • 错误不应该默默通过。
  • 除非明确沉默。
  • 面对歧义,拒绝猜测的诱惑。
  • 应该有一个 - 最好只有一个 - 明显的方法来做到这一点。
  • 虽然这种方式可能并不明显,除非你是荷兰人。
  • 现在总比从未好。
  • 虽然从来没有比现在更好。
  • 如果执行很难解释,这是一个坏主意。
  • 如果实施很容易解释,这可能是一个好主意。
  • 命名空间是一个重要的想法 - 让我们做更多的这些!
2

的问题问的Python的代码的集合,所以我会添加一些人,我喜欢,因为他们使用的是强大的Python的运营商***

换位使用拆包经营者*

解包运算符是一个非常强大的工具,可以让我们“解包”一个列表。我不知道其他语言的任何等价物。

此操作可以有非常有趣和有用的应用程序:再次

a = [[1,2],[3,4]] 
a_transpose = zip(*a) 

Dictionnary级联使用的元组拆包经营者**

,我不知道在其他语言中的任何等价物。和上面一样,我们可以使用这个操作符来处理许多事情,包括字典串联:

a = {1:2,2:2} 
b = {2:37,3:42} 
a = dict(a,**b) # a is now {1:2,2:37,3:42} 
相关问题