龟叔和他的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之父的更多相关文章

  1. Python匹马行天下之面向对象

    概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发“更快更好更强...” 面向过程编程最易被初学 ...

  2. Python匹马行天下之_循环

    一.while循环 如果条件成立(true),重复执行相同操作,条件不符合,跳出循环 while   循环条件: 循环操作 (1)while循环示例 例:输入王晓明5门课程的考试成绩,计算平均成绩 1 ...

  3. Python匹马行天下之运算符

    什么事运算符? 本章节主要说明Python的运算符.举个简单的例子 4 +5 = 9 . 例子中,4 和 5 被称为操作数,"+" 称为运算符. Python语言支持以下类型的运算 ...

  4. Python匹马行天下之初识python!

    python的发展史 1989年,被称为龟叔的Guido在为ABC语言写插件时,产生了写一个简洁又实用的编程语言的想法,并开始着手编写.因为其喜欢Monty Python喜剧团,所以将其命名为pyth ...

  5. Java匹马行天下之Java帝国的崛起(大结局)

    Java匹马行天下之Java帝国的崛起大结局 前言: [博客*缘] 网络真情伴, 博客友谊连. 笑中藏泪暖中寒. 回想那些悲喜, 苦涩也缠绵. 往事难回首, 新篇染旧言. 世间多少梦能全. 感谢相牵, ...

  6. Java匹马行天下——开篇

    个人感言: 匹马行天下是我高中时候看过一部叫<九鼎记>的小说中的其中一个大章节标题,在整个这一章中,讲的是是主人公滕青山历经艰险,又心如磐石,一心修行,最后巅峰归来的故事.现在回想,依旧心 ...

  7. Java匹马行天下之JavaWeb核心技术——JSP

    JSP动态网页技术 一.JavaWeb简介 一.什么是JavaWeb? JavaWeb是用Java技术来解决相关web互联网领域的技术总称. 需要在特定的web服务器上运行,分为web服务器和web客 ...

  8. Java匹马行天下之JavaWeb核心技术——JSP(续一)

      十二.JSP表单处理 我们在浏览网页的时候,经常需要向服务器提交信息,并让后台程序处理.浏览器中使用 GET 和 POST 方法向服务器提交数据. GET 方法 GET方法将请求的编码信息添加在网 ...

  9. Java匹马行天下之J2EE框架开发——Spring—>Spring框架知多少

    ————也许我注定成不了一个伟大的人,但是至少我可以做一个很棒的自己.我想我现在应该做的不是瞻前顾后,而是活在当下,正确认知自己,做好自己现在的工作,努力提升自己的能力,踏踏实实地做一个程序员 一.思 ...

随机推荐

  1. js滚动到顶部底部代码

    <!DOCTYPE HTML> <html> <head> <meta charset=UTF-8> <title>SCROLL</t ...

  2. Code::Blocks

    Code::Blocks 是一个开放源码的全功能的跨平台C/C++集成开发环境. Code::Blocks是开放源码软件.Code::Blocks由纯粹的C++语言开发完成,它使用了著名的图形界面库w ...

  3. python中处理.mat文件

    python中处理.mat文件 背景 在实际使用python的时候,发现很多数据都是使用.mat的形式保存,所以,如何使用python读写.mat文件成为了许多python使用者必备的技能. -v7. ...

  4. C++——指针与引用

    1.指针本身为对象,引用只是对象的别名.故有指针的引用,没有引用的引用,没有引用的指针.指针必须指向一个实际的对象.引用也必须是实际对象的别名. 2.允许指针赋值和拷贝,指针可指向不同的对象 3.指针 ...

  5. Gerrit Handbook for Commercial Project

    前注:常见‘坑’ 不要使用 2.14 版本 gerrit.conf 中 [sendemail] 部分必须有 from = ... 字段,否则无法添加邮箱 gerrit 以用户组为单位划分权限,先将用户 ...

  6. PostgreSQL——服务器基本设置与操作

    一.编译安装: 环境准备: GNU make 版本 >=3.8 (make --version) ISO/ANSI C 编译器,至少須兼容 C89 标准,GCC 或 intel 編译器等均可 g ...

  7. 剑指offer——54数组中的逆序对

    题目描述 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对.输入一个数组,求出这个数组中的逆序对的总数P.并将P对1000000007取模的结果输出. 即输出P%1000 ...

  8. 2018湘潭大学程序设计竞赛【A】

    题目链接:https://www.nowcoder.com/acm/contest/105/A 题意:给你起始和结束的天时分,让你算总秒数. 题解:输入格式.注意long long.签到题. #inc ...

  9. js 万能判断

    console.log(Object.prototype.toString.call(123)) //[object Number] console.log(Object.prototype.toSt ...

  10. js进阶之路,关于UI资源的优化(转载)

    以下场景往往由于事件频繁被触发,因而频繁执行DOM操作.资源加载等重行为,导致UI停顿甚至浏览器崩溃. 1. window对象的resize.scroll事件 2. 拖拽时的mousemove事件 3 ...