可能有时候你在论坛上
会看到有人这样说
“你写的代码
一点都不 Pythonic”
what?
Pythonic?
什么是 Pythonic 呢
其实说白了就是你的
代码风格
有些人可能之前是
写 Java 或者 C 的
然后就想用惯有的代码风格
来写 Python
虽然程序可以跑起来
但是不 Pythonic 啊
也就是说
Python 追求代码尽量
清晰、简洁、可维护
要看起来像诗句一样
也就是我们常说的
Python 之禅
![640?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/800a2097700544c6dbb31b73b26b6641.jpeg)
所谓
人生苦短
我用 Python
Python有自己
独有的追求
想在编程语言中做一股清流
尽量让代码看起来漂亮
而又简洁有用易读
这也就是为什么说
Python更容易学
比如在 java 中
写一个 for 循环是这样的
![640?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/7602159848003592c9ad93fde473ab1b.png)
直接用 Python 可能会这样实现
![640?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/84bde7fc842ec82a0ed09e9bc4cf13f5.png)
这样的代码能运行
但是 unpythonic
pythonic 应该是这样的
![640?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/228c11124f2c73a9f7b5a93edad5b0bb.png)
再比如
我们想根据原有的列表中的元素
根据一定的规则创建出另一个列表
![640?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/2edfd4550eb9b62ed57ad2a8c54530fa.png)
这里我们将列表中的元素×2
组成新的列表
而 Pythonic 是这样的
![640?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/74240c2a520c84e928410502404cef8a.png)
又比如
你想将两个变量的值进行互换
在 java 中是这样的
int temp;
temp = a;
a = b;
b = temp;
而 Pythonic 是这样的
a, b = b, a
是不是一下子简洁很多了
Python官方有个 pep 8
就是专门讲代码风格的
![640?wx_fmt=png](https://i-blog.csdnimg.cn/blog_migrate/ad0533b8e872b810f19bf90dd52741c5.png)
地址在这里
https://legacy.python.org/dev/peps/pep-0008/
可以了解一下
小帅b觉得吧
代码写的易读不易读
不仅是对别人负责
也是对自己负责
一起改进吧
peace
推荐阅读: