小白趣读PEP|优雅的代码的用优质的编译器

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理

以下文章来源于腾讯云 作者:Python进击者
( 想要学习Python?Python学习交流群:1039649593,满足你的需求,资料都已经上传群文件流,可以自行下载!还有海量最新2020python学习资料。 )
在这里插入图片描述

首先给大家简单介绍一下PEP是什么,PEP的全称是Python enhancement Proposals,简单翻译过来就是Python增强建议。

其实,你可以理解为对于Python的建议书。
在这里插入图片描述
https://www.python.org/dev/peps/

上面是它的官网,你可以去看看。

因为看网上很多大佬都翻译了一些重要的PEP,所以我并不打算这个系列只是进行单纯的翻译,更多的是从我和你的角度去解读一篇PEP。

当然,翻译也会有,可能是我自己翻译,也可能是别人翻译的。

名称叫趣读,那必然得有趣点,不然我自己也看不下去
在这里插入图片描述

PEP20 The Zen of Python

标题解释过来就是,第20条建议 Python之禅

为什么不从第一条开始呢?

因为第一条是PEP Purpose and Guidelines,没啥意思。

在这里插入图片描述
而且Python之禅这个标题直接吸引我点进去阅读了。

下面我们进入正题,首先给大家看下原文:

在这里插入图片描述

优美胜于丑陋

我们可能看过雷军大学时代码的新闻,他说他的代码像诗一样美,我们也要朝着那个方向发展。

人总是进步的,我现在回过头看以前写的代码,那都是些什么玩意?

明晰胜于晦涩

当你看了许多的代码,你就会发现每个人的代码都写的不一样,同样实现一个需求,有些人写的很难看懂,有的人却写的非常的明晰且通俗。

简洁胜于复杂

记住这句话:不搞花里胡哨的,一切以简洁为主。
在这里插入图片描述
复杂胜于凌乱
上面说简洁比复杂好,这里说复杂比凌乱好,我认为这里的复杂不是跟前者一样。这里的复杂的比较对象是凌乱,也就是说我实现的功能很复杂,但是我写的代码却不凌乱,清晰明了。
在这里插入图片描述
扁平胜于嵌套
其实这里的扁平我们可以理解为扁平化设计,即去掉冗余、复杂的装饰效果。

疏胜于密
代码不要在一行全部写完,代码与代码之间要保留间隔。

在Python中代码全写一行会报错,但是像Java等语言你确实可以在一行中写下所有代码。一行写下所有代码并不会代表你很牛逼,除非你把十行代码简化为一行。

可读性很重要
对于用户来说,可读性好与差没关系。但是身为一个程序员,你必须要为下一个接班人着想,不要写的连自己也看不懂了。

在这里插入图片描述
我们可以发现github上比较火的项目都是可读性很高的。

特殊情况不足以打破规则
不要去尝试挑战规则,如果能挑战成功,你还是现在这样吗?

在这里插入图片描述
不要以为错误不会来,除非你假装没看见
我觉得这句话确实很真实,很多时候程序会偶尔出现一些小错误,但是恰恰以为是小错误就不去理会。

这很可能会在关键的时候掉链子。

面对不确定,不要去猜测,最好找到唯一一种明显的解决方法,但是这种方法不一定明显,但是问题不大,因为你不是Python之父
这句话还挺有意思(好像在骂我?

其实就是告诉我们要深度思考,不要浮于表面。

做比不做好,不做比不带脑子做好
这句话看表面意思还看不出什么,但是看了大佬翻译的才恍然大悟。
在这里插入图片描述
如果这个主意很难解释,那么这是个坏主意;如果它很容易解释,那么它是个好主意
这句话总结了上面的简洁、复杂和凌乱,还有深度思考。Kuls个人认为,主意很难解释不一定是主意不好,也有可能是自己的原因,所以深度思考很重要。

命名空间是个很不错的主意,让我们多运用它吧
这应该算是提倡。命名空间就是防止同名干扰。

就例如在xml中,两个相同含义例如表格都是以< table >来命名,但实际表达的东西不一样,一个是动物种类的表,一个是水果种类的表。如果把两个表合在一个文件,那么就会有冲突,这个时候我们可以通过< a:table >和< f:table >这种形式来命名

总结
其实PEP20对于刚刚踏入编程世界的朋友很有帮助,它能够帮你塑造出什么才是美的代码的形象。

对于程序员来说也有参考价值,能够时时刻刻提醒我们,如果去优雅的搬砖。

今天的文章就到这了,不知道大家对于这个系列的文章感不感兴趣,如果感觉不错,帮忙点个在看吧!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值