随聊——Python的前世今生
1989年圣诞节前夕,山雨欲来风满楼,计算机程序设计语言界隐隐有大事要发生,果然不出所料。江湖人称龟叔(Guido von Rossum),就是这位祖籍荷兰的大能,在圣诞节百无聊赖的期间,发明了Python。自此,Python一发不可收拾,备受业界人士喜爱,迅速占领各大行业、公司、企业,成功登顶语言类排行榜。
至此,Python已然成为人人争抢修炼的一本秘籍。这与龟叔的设计初衷理念是分不开的。早期,电脑内存的限制,效率低下,程序语言执行过程繁琐,并且语言适应方向单一,运维脚本与程序开发不能兼具高效率开发。就是在这种迫切需要一种语言,能够解决上述窘境、全面调用计算机的功能接口的Python语言应运而生。可以说python的出生是一种必然。
Python语言的诞生,是在关键的时刻解决至关重要的难题,而不是要与其他语言一较高下,一决雌雄的。Python有着自己独特的领域,能做其他所不能做,完成其他所不能完成,你说想到的只是Python的附加项,没错,就是你现在想到的。所以说Python的特点是‘优雅’、‘明确’、‘简洁’。
Python这个名字的由来,由于龟叔喜爱一部电视剧‘Monty Python’s Flying Circus’,很独特很任性是吗,龟叔:What can you do for me?Python是由C语言写出来的,因为Python最初的理念就是创造一种与C和Shell之间的功能全面的,易学易用,可拓展性很强的语言。所以说Python是一种大方得体,平易近人的。
简单来讲,对比一下:C语言的执行方式是编译为机器码、执行速度疾如雷电、代码量盈千累万;Java语言的执行方式是编译为字节码、执行速度快马加鞭、代码量车载斗量;Python语言的执行方式是解释执行、执行速度风度翩翩、而代码量则是言简意赅的,用《道德经》里面的一句话来讲就是‘少而精,简而远’。执行的速度快很重要对吗?是的,但是在大多数的程序应用中是需要数据传输的,所以说执行的速度再快,数据传输跟不上也是一样的。没听过吗,再厉害的跑车在四环路上也只能跑20而已。
Python的发展趋势和实际应用场景,已经不需要说了是吗,看几条新闻,看几条招聘,有什么比现实更现实的,我们能做也只能是为了追赶现实而努力。
最后,Python的“转世”过程是潇洒的,在2版本发展使用的过程中,Python3横空出世,被称为Py3K。所以说Python在版本过渡的过程中也是由坎坷的,到目前为止2版本中最成熟的是2.7版本,但官方只支持到2020年。这也就说明python3已经很成熟,大可以放心选择、使用、版本替换了。
安装过程简单,不过是在熟练的情况下简单。如果首次还是按照百度百科或者在大人的看管下安装使用。
Python也有自己的明信片,可以查看Python之禅(The Zen of Python, by Tim Peters),通过在交互式Shell中import this查看。
>>> 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!
译文:
Python之禅
优美胜于丑陋
明了胜于晦涩
简洁胜于复杂
复杂胜于凌乱
扁平胜于嵌套
间隔胜于紧凑
可读性很重要
即便假借特例的实用性之名,也不可违背这些规则
不要包容所有错误,除非你确定需要这样做
当存在多种可能,不要尝试去猜测
而是尽量找一种,最好是唯一一种明显的解决方案
虽然这并不容易,因为你不是 Python 之父
做也许好过不做,但不假思索就动手还不如不做
如果你无法向人描述你的方案,那肯定不是一个好方案;反之亦然
命名空间是一种绝妙的理念,我们应当多加利用
随聊——Python的前世今生的更多相关文章
- Python - 和我聊Python节目最新一期介绍 - 257期:使用超级电脑,Python,射电天文学知识来探索银河系
今天,给大家简单介绍和我聊Python的最新一期节目,第257期:使用超级电脑,Python,射电天文学知识来探索银河系. 听着标题就觉得高大上,是的,我也是这么认为的.这次请的嘉宾来头很大,来自国际 ...
- Python - 翻译Talk Python To Me (和我聊Python) 播客
“和我聊Python”是一个美国的聊天播客,英文名Talk Python To Me,类似于喜马拉雅的音频课程节目,只不过这个主题是编程语言Python.该节目从2015年的节目到现在,已经超过256 ...
- Python开发 第一篇 python的前世今生
Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC ...
- 三言两语聊Python模块–单元测试模块unittest
实际上unittest模块才是真正意义上的用于测试的模块,功能强大的单元测试模块. 继续使用前面的例子: # splitter.py def split(line, types=None, delim ...
- 三言两语聊Python模块–文档测试模块doctest
doctest是属于测试模块里的一种,对注释文档里的示例进行检测. 给出一个例子: splitter.pydef split(line, types=None, delimiter=None): &q ...
- (一)python的前世今生
一:Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum)(目前还活着),诞生于1989年,是一个脚本解释程序,由于python语言结构优美,清晰简单,随着人工智能 ...
- Python的前世今生
放弃 拾起 放弃 拾起 最终决定好好的编写一次Python的学习笔记 人生苦短,我用Python --------------Life is short, you need Python 再不抓紧,就 ...
- python学习笔记-(一)初识python
1.python的前世今生 想要充分的了解一个人,无外乎首先充分了解他的过去和现在:咱们学习语言也是一样的套路 1.1 python的历史 Python(英国发音:/ˈpaɪθən/ 美国发音:/ˈp ...
- 从用python自动生成.h的头文件集合和类声明集合到用python读写文件
最近在用python自动生成c++的类.因为这些类会根据需求不同产生不同的类,所以需要用python自动生成.由于会产生大量的类,而且这些类是变化的.所以如果是在某个.h中要用include来加载这些 ...
随机推荐
- [转载] Dubbo架构设计详解
转载自http://shiyanjun.cn/archives/325.html Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合 ...
- set 利用lower_bound实现key索引
set中数据类型为结构体T,T中有两个成员key和val定义如下: struct T{ int key,val; T(int k,int v):key(k),val(v){} bool operato ...
- 老男孩Python全栈开发(92天全)视频教程 自学笔记03
day3课程目录: pyhton的历史 32bit和64bit系统的区别 Python版本的选择 第一个pyhton程序 文件后缀名及系统环境变量的介绍 pyhton程序的执行和其他编程语言的简单对比 ...
- MD5摘要算法简析
1 MD5简介 1.1 概述 MD5即Message-Digest Algorithm 5(信息-摘要算法5),用于确保信息传输完整一致.是计算机广泛使用的杂凑算法之一(又译摘要算法.哈希算法),主 ...
- javafx 聊天室WeChat
[toc] 功能和特性 基于socket实现的c/s架构的的通信 服务器和客户心跳连接 gson实现的消息通信机制 注册及登录 支持私聊和群聊. 动态更新用户列表以及用户消息提示 支持emoji表情, ...
- SaltStack 安装介绍 01
一.入门指南 1.1 SALTSTACK是什么? The backbone of Salt is the remote execution engine, which creates a high-s ...
- uva11636-Hello World!
题意:已知有一行printf(“Hello World!”\n);以后就可以复制,问多少次之后就可以达到所需要的行数. 题解:模拟: #include<iostream> #include ...
- ChatterBot之快速入门01
本人运行环境为Python 3.5.2; 首先你需要导入chatterbot 的包,如果没有你先需要下载 使用命令 pip install chatterbot 1 # -*- coding: utf ...
- Libevent 事件循环(2)---事件被加入激活队列
由Libevent 事件循环(1) 在上文中我们提到了libevent 事件循环event_dispatch 的大致过程,以epoll为例,我们看一下事件被如何加入激活队列. //在epoll_dis ...
- 深入理解php内核 编写扩展 II:参数、数组和ZVALs
原文:http://devzone.zend.com/article/1022-Extension-Writing-Part-II-Parameters-Arrays-and-ZVALs Part I ...