Python匹马行天下之python之父
龟叔和他的python
经过了漫长的旅程,终于要看到主角Python了。Python是现在非常非常流行的编程语言,在我们能看到的大部分编程语言排行榜中,Python都能在前三甲中拥有一席之地 ,并且发展势头非常之猛,可以这么说Python是一门非常非常有前途的语言。
那么Python到底是一个什么样的语言呢?今天我们就来一起了解一下。吉多·范罗苏姆,是一位荷兰的程序员,被中国程序员戏称为龟叔。他就是传说中的Python之父。也正是这样一个人设计创造了Python这个编程语言。
▲ Guido Van Rossum
编程语言的发明过程都是类似的,大部分都是起源于对于现状的不满,Python也不能免俗。吉多在设计Python之初,市面上已经存在有很多种不同的编程语言了,但似乎每种语言都不是那么的完美。C语言很强大,但是语法复杂,学习成本高,使用起来也比较麻烦。Shell很简单易用,但功能又不够强大,很多事都无法完成。在这个背景下,吉多就想设计一款功能强大而又语法简洁的新语言。
在1989年的圣诞节,吉多为了打发时间,开始着手编写新语言的解释器。这里我们提一下解释器,关于一门编程语言,可以简单的把它分成两个部分语法和解释器。语法指的是一些语法规则,各种语句啊,如何定义变量啊等等一系列的规则。而解释器的作用就是将符合这一系列规则的代码转换为机器码的程序。所以解释器程序开发完成,这门编程语言也就完成了。就这样,吉多利用一个圣诞节的时间开发了新语言的解释器。
吉多是一个非常有意思的人,当时电视上非常流行一个电视剧蒙提·派森的飞行马戏团。吉多也非常喜欢看,于是直接使用剧团的名字来为这个语言命名,Python由此诞生。
▲ 蒙提派森剧团
Python的设计哲学是“优雅”、“明确”、“简单”,如果之前你使用过其他的语言,再来使用Python,一定会被它的简洁、优雅所震惊。Python将语法中一切不必要的内容全部去除,仅留下一些必备的东西,使得Python的语法变得十分简洁。换句话说,和其他语言相比Python可以编写更少的代码而做更多的事。《Java编程思想》的作者Bruce Eckel这样评价Python:“life is short you need python”,这句话充分的说明了Python的简洁性。
▲Bruce Eckel
Python的语法简洁,功能却不简单。C语言能做的事,在Python中也能完成。但是Python是一门解释型语言,C是一门编译型语言。所以Python的性能没有C语言那么好,但不要以为这样就完了,在Python中可以直接调用C语言的代码,所以如果你觉得性能不够好,可以直接在Python中使用C语言去编写部分代码。除了可以直接调用C和C++的代码,也可以在别的语言中调用Python的代码。所以,很多人将Python作为一个胶水语言使用(通过Python将不同的语言混合使用)。
Python就是这样一个优雅、明确、简单并且功能强大的语言,夸张一点说Python是一个近乎完美的语言。
关于Python的特点,这里我不想赘述。刚刚接触到一个新语言,我们不需要过多的去记忆一些理论上的东西,只需要大概有个印象就足够了,这里你只需要记住两个特点:第一,Python是一门脚本(解释型)语言。第二,Python是一门面向对象的编程语言。啥是面向对象?管它呢,以后再说。
最后,我们要谈一下Python的作用,Python可以做的事非常非常多(可以这么说基本上全都能做),比如:网络应用的开发(网站),桌面软件的开发,自动化运维,科学计算、云计算、人工智能。总之,在所有的开发领域都能看到Python的身影,而对于我们来说,这意味着学会了Python我们可选择的方向也会非常非常的多。但是,先不要考虑方向的问题,我们一步一步的来,学会了Python,其他的东西也就不远了。
Python匹马行天下之python之父的更多相关文章
- Python匹马行天下之面向对象
概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发“更快更好更强...” 面向过程编程最易被初学 ...
- Python匹马行天下之_循环
一.while循环 如果条件成立(true),重复执行相同操作,条件不符合,跳出循环 while 循环条件: 循环操作 (1)while循环示例 例:输入王晓明5门课程的考试成绩,计算平均成绩 1 ...
- Python匹马行天下之运算符
什么事运算符? 本章节主要说明Python的运算符.举个简单的例子 4 +5 = 9 . 例子中,4 和 5 被称为操作数,"+" 称为运算符. Python语言支持以下类型的运算 ...
- Python匹马行天下之初识python!
python的发展史 1989年,被称为龟叔的Guido在为ABC语言写插件时,产生了写一个简洁又实用的编程语言的想法,并开始着手编写.因为其喜欢Monty Python喜剧团,所以将其命名为pyth ...
- Java匹马行天下之Java帝国的崛起(大结局)
Java匹马行天下之Java帝国的崛起大结局 前言: [博客*缘] 网络真情伴, 博客友谊连. 笑中藏泪暖中寒. 回想那些悲喜, 苦涩也缠绵. 往事难回首, 新篇染旧言. 世间多少梦能全. 感谢相牵, ...
- Java匹马行天下——开篇
个人感言: 匹马行天下是我高中时候看过一部叫<九鼎记>的小说中的其中一个大章节标题,在整个这一章中,讲的是是主人公滕青山历经艰险,又心如磐石,一心修行,最后巅峰归来的故事.现在回想,依旧心 ...
- Java匹马行天下之JavaWeb核心技术——JSP
JSP动态网页技术 一.JavaWeb简介 一.什么是JavaWeb? JavaWeb是用Java技术来解决相关web互联网领域的技术总称. 需要在特定的web服务器上运行,分为web服务器和web客 ...
- Java匹马行天下之JavaWeb核心技术——JSP(续一)
十二.JSP表单处理 我们在浏览网页的时候,经常需要向服务器提交信息,并让后台程序处理.浏览器中使用 GET 和 POST 方法向服务器提交数据. GET 方法 GET方法将请求的编码信息添加在网 ...
- Java匹马行天下之J2EE框架开发——Spring—>Spring框架知多少
————也许我注定成不了一个伟大的人,但是至少我可以做一个很棒的自己.我想我现在应该做的不是瞻前顾后,而是活在当下,正确认知自己,做好自己现在的工作,努力提升自己的能力,踏踏实实地做一个程序员 一.思 ...
随机推荐
- 【前端技术】一篇文章搞掂:CSS
Flex布局 Flexible Box的缩写,意为”弹性布局”,用来为盒状模型提供最大的灵活性. /*父容器,设置弹性布局*/ .parent{display: flex;} /*设置父容器主轴方向* ...
- (转)秒懂,Java 注解 (Annotation)你可以这样学 ---- 重要 注解定义与反射解析
转:http://blog.csdn.net/briblue/article/details/73824058 文章开头先引入一处图片. 这处图片引自老罗的博客.为了避免不必要的麻烦,首先声明我个人 ...
- fatal error C1076: compiler limit : internal heap limit reached; use /Zm to specify a higher limit
最近想用一下Xtreme ToolkitPro 界面库,安装后用VC6根据向导 产生一个工程,编译时出现如下的错误: fatal error C1076: compiler limit : inter ...
- (1)Redis 基本类型
https://redis.io/ http://redisdoc.com/ 中文 一. 库 redis默认16个库,0-15.默认端口号 6379 使用某个库 测试服务器是否连通 ping // ...
- ArcGIS version not specified.
问题 在调用arcgis10 的ISurface用来取指定航线的地形时,这段代码在加载.dem时总是出错. 报: Fail to open raster dataset 解决方法: 在窗体中加载Map ...
- Dubbo入门到精通学习笔记(八):ActiveMQ的安装与使用(单节点)、Redis的安装与使用(单节点)、FastDFS分布式文件系统的安装与使用(单节点)
文章目录 ActiveMQ的安装与使用(单节点) 安装(单节点) 使用 目录结构 edu-common-parent edu-demo-mqproducer edu-demo-mqconsumer 测 ...
- Jeecg 3.8修改lhgDialog弹窗的样式
位置:F:\jeecg-bpm-3.8\eecg-bpm-3.8-master\jeecg-bpm-3.8\src\main\java\org\jeecgframework\core\util pub ...
- 函数的四种调用模式.上下文调用.call.apply
闭包:函数就是一个闭包,一个封闭的作用域; 返回函数,要返回多个函数就用一个对象封装一下, 立即执行函数+return 回调函数 JS动态创建的DOM,不会被搜索引 ...
- 9.3.1 The assign and deassign procedural statements
IEEE Std 1364™-2001, IEEE Standard Verilog® Hardware Description Language The assign procedural cont ...
- 自己写Linux module来收集buddy info
1 编写代码pslist.c 1: #include<linux/init.h> 2: #include<linux/module.h> 3: #include<linu ...