除了语法简单,Python的简洁还体现在哪?
《Java编程思想 (Thinking in Java)》 的作者Bruce Eckel给予了Python高度评价,他说:Life is short, you need Python。很多人初识Python,是因为这句话。
成功的背后,是一个坚定的选择
生命如此美好,但是太过短暂。要想在有限时间内,最高效的做出成绩,选择比努力要更重要。如何选择一门编程语言,是个争论不休的永久话题。但是,有一个问题的答案是明确的,使用人数和增长率,是衡量是否成功的重要标准。吉多·范罗苏姆是Python的设计者和创造者,他的这一产品能得到全世界那么多程序员的喜爱和选择,是因为作对了什么呢?
失败是成功之母
吉多在创造Python之前,参与设计了ABC这一种教学语言。ABC非常的优美和强大,但最终没有获得成功。吉多在总结失败原因的时候发现,ABC不够开放,普适性比较差,使用的人数得不到快速扩增,这样就不会产出足够的影响力,以致难以让更多的人加入进来。
表面是三点,其实只有一个源起点
有三点特征,成就了Python。第一,简洁性;第二,易读性;第三,可扩展性。因为简洁,所以更易学习。Python没有花哨的语法,更多是明确的、没有或很少有歧义的语法。直接,而且有效。易读性强,也很重要。10%的时间用来写,90%的时间是在读。易读,就会有更多的人愿意读,并且借鉴去用。接下来,自然会有丰富的扩展库聚集在Python的周边,独乐乐,不如众乐乐。
归根结底,如果要把三点总结为一点的话,一切的缘起,应该就是简洁。另外的两个特征,是由简洁所派生的。
举个栗子
构造对象,Python寥寥数行就能搞定。列表、字典解析等语言机制为简洁提供了工具。强制缩进等硬性约束和语法要求,让Python代码的风格高度一致。
比如,我编写一个可以把字符串反转过来的函数。
想实现:
输入:“writing the code, changing the world”
输出:“dlrow eht gnignahc ,edoc eht gnitirw”
可以这样:
class Solution:
def reverseString(self, s): """ :type s: str :rtype: str """ return s[::-1]
更直接些,可以这样
str = 'writing the code, changing the world'
print(str[::-1])

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
js运算精准问题
都知道拿js去做运算肯定会遇到计算精准的问题(或称舍入误差),但是怎么避开这些坑,这里是我从网上整理的方案,欢迎探讨。 精准丢失的原因 计算机的二进制实现和位数限制有些数无法有限表示。就像一些无理数不能有限表示,如 圆周率 3.1415926...,1.3333... 等。JavaScript 使用 64 位存储数字类型,因此超出的会舍去。舍去的部分就是精度丢失的部分。 以下是十进制小数对应的二进制表示 0.1 >> 0.0001 1001 1001 1001…(1001无限循环) 0.2 >> 0.0011 0011 0011 0011…(0011无限循环) 解决方案 如需要更加复杂的计算类库,可以考虑 math.js等知名类库 浮点数(小数) 对于小数,前端出现问题的几率还是很多的,尤其在一些电商网站涉及到金额等数据。解决方式:把小数放到位整数(乘倍数),再缩小回原来倍数(除倍数)转换成整数后的运算结果 不能超过 Math.pow(2,53) // 0.1 + 0.2 (0.1*10 + 0.2*10) / 10 == 0.3 // true 浮点精准运...
- 下一篇
Word自动化(C# + Python)(持续更新中...)
目录 前言 读取Word内容 NPOI NPOI安装 NPOI提取Word内容 用Costura.Fody打包DLL python-docx 读取PDF内容 python-docx自动生成Word 全局字体 内容字体 单元格合并 最后 前言 Word就是那种很难用, 很丑陋, 但是你不得不用的东西, 在这一点上, 它甚至比Windows更甚(毕竟Gates是通过帮水果写Office才有机会接触Macintash和施乐的嘛, 你听过的, 两个小偷的故事). Windows可以用macOS + PlayStation进行1000%的替代, 没有多打0(手动滑稽). 但是Office不能够, 并不是没有比Office更好的东西, 这是一个历史残留问题, 就像牙膏厂CPU里面, 那些莫名其妙的字段一样.总之, 这里通过使用一些库, Python的python-docx, C#的pdfbox和npoi, 来让对Word和PDF的处理变得更加自动化一些.最后, 如果你想设计一些定制化的功能, 还是希望可以从官方文档进行学习, 而不是通过看博客. 尤其是当你只能够用某度, 而不是某歌, 那些前几页给...
相关文章
文章评论
共有0条评论来说两句吧...