1
snip 2013-08-31 12:50:23 +08:00
我也对这个问题有兴趣,同问
|
2
eatmore 2013-08-31 12:51:57 +08:00
1) 随便找个知名的开源python项目看看
2) 读那本cookbook |
3
lisztli 2013-08-31 12:59:27 +08:00
问问题的时候,把"python风格" 改成 "pythonic"
|
4
kunimi 2013-08-31 13:03:11 +08:00
|
5
meta 2013-08-31 13:30:21 +08:00
我觉得多用python的特性和方言就比较像了,比如slice或者list的遍历操作什么的。
|
6
tioover 2013-08-31 13:45:32 +08:00 1
贴一点你认为不够pythonic 的代码呗
|
7
ThunderEX 2013-08-31 14:39:19 +08:00 1
|
8
ipconfiger 2013-08-31 14:53:08 +08:00
去玩玩一行实现XXX什么的,就可以把各类奇技淫巧都掌握了。但是那个并不是Pythonic,Pythonic就是怎么简单怎么来
|
9
no13bus 2013-08-31 16:22:43 +08:00
|
10
zorceta 2013-08-31 17:34:17 +08:00 1
PEP8
|
11
G6tFI41JufeV7M9i 2013-08-31 18:41:45 +08:00 1
如果你只会python 写出来的绝对是python风格。
|
12
pythoner 2013-08-31 23:09:08 +08:00
1,先理解 The Zen of Python
2,阅读优秀的开源python项目源码 3,看看pep8,并竟可能的遵循它 |
13
ushuz 2013-09-01 00:06:22 +08:00
import this & pep8
|
14
kid177 OP |
15
liushuaikobe 2013-09-01 18:54:07 +08:00
>>> 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! >>> |
16
unionx 2013-09-01 23:58:55 +08:00
有人写的Python是Lisp风格,有人写的Python是Java风格
我还真没见过Python风格的 |
17
metaclass 2013-09-02 03:32:30 +08:00
其实著名的Python项目有些也是用别的风格写的
比如Django,会有这样的写法: context = { 'protocol': use_https and 'https' or 'http', } 其中use_https是一个bool 传统Python风格的写法应该是: context = { 'protocol': 'https' if use_https else 'http', } 不过第一种写法由于和a ? b : c差不多,条件放最前面两个赋值放最后面可能会更容易识别一些,用那个写法的还不少 |
19
raptor 2013-09-02 08:36:47 +08:00
没事,只要能跑就行了,看得多写得多以后自然就pythonic了,不要急
|
20
thinkhu 2013-09-02 10:31:23 +08:00
v2ex是python写的吧,有时候发布主题出错!
|