如何学习Python

Python是什么


Python(英语发音:/ˈpaɪθən/), 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年,Python 源代码同样遵循 GPL(GNU General Public License)协议。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。(来自百科)

Python的由来


Python的创始人为Guido van Rossum。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为ABC语言的一种继承。之所以选中Python(大蟒蛇的意思)作为程序的名字,是因为他是一个Monty Python的飞行马戏团的爱好者。牛逼的人物就是牛,这跟当前的汤普森创建Unix有着异曲同工之妙;当年的高德纳老爷子,为了写文章舒服就发明TeX排版。

ABC是由Guido参加设计的一种教学语言。就Guido本人看来,ABC这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,Guido认为是非开放造成的。Guido决心在Python中避免这一错误(的确如此,Python与其它的语言如C、C++和Java结合的非常好)。同时,他还想实现在ABC中闪现过但未曾实现的东西。

就这样,Python在Guido手中诞生了。实际上,第一个实现是在Mac机上。可以说,Python是从ABC发展起来,主要受到了Modula-3(另一种相当优美且强大的语言,为小型团体所设计的)的影响。并且结合了Unix shell和C的习惯。

介绍完Python的历史及由来后,接下来我们介绍一下为什么要学习Python。

为什么要学习


Python最近几年发展的非常火,我们看一下近三年的编程语言排行榜,看一下Python的排行就知道了。

近几年的流行度


首先看2015年3月份的排行情况:

这是2015年3月份的排行,位于第8名的位置。接下来看看2016年3月份排行榜Python的位置排名:

2016年3月份已经上升到了第5名。接下来继续看看2017年5月份发布的编程语言排行榜中Python的排名:

截止到2017年5月份,Python的排名已经跃居第4名了。

入门相对简单


Python语言相对其他语言来说相对简单些。比如同样写一个“Hello,World”这样的一个入门程序,我们对比一下C、Java及Python分别是如何写的。

首先看C的写法:

#include <stdio.h> int main(int argc, char *argv[]) { printf("Hello World\n"); return 0; }

对上面的C代码编译及运行:

(mypy) [lavenliu@vpnserver ~]$ gcc -o hello hello.c (mypy) [lavenliu@vpnserver ~]$ ./hello Hello World

再看Java的写法:

public class Hello { public static void main(String[] args) { System.out.println("Hello World"); } }

对上面的Java代码进行编译并运行:

(mypy) [lavenliu@vpnserver ~]$ javac Hello.java (mypy) [lavenliu@vpnserver ~]$ java Hello Hello World

接下来我们看看Python的“Hello World”的正确打开姿势,在命令行中直接输入python即可进入Python的交互式解释界面:

(mypy) [lavenliu@vpnserver ~]$ python Python 3.5.2 (default, Jun 16 2017, 08:22:30) [GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux Type "help", "copyright", "credits" or "license" for more information. >>> print('Hello World') # 仅此一行就搞定了“Hello World” Hello World

由此看来,是不是很简单?

DevOps的发展


近几年DevOps的发展,促使开发、运维及测试等部门的紧密结合(DevOps的概念源于亚马逊及Google等这样的超大型互联网公司,这些公司部门员工需要紧密协作,同时又不希望出现部门割据。)。

DevOps的另一个意思也是要求运维具备一定的开发水平,这样才能提高自身竞争力。现在单纯的运维已经面临非常尴尬的局面:公有云的兴起,大部分新型公司已经对运维的依赖性比较小了,云厂商已经把大部分的底层的运维工作给做了。如,系统监控等等。这时,运维人员的存在几乎变得可有可无,剩下的工作,开发们都可以完成。对于公司来说,也节省了人力成本。

对于那些基础的且毫无开发经验的运维来说,只能做一些底层的一些工作。如果想要破局,小白认为:其一,向资深运维发展(成为运维专家);其二,向运维开发发展(具备开发水平)。

接下来说说如何学习。

如何学习Python


学习Python之前要有Python的环境。首先,在我们的系统上要安装Python。其次是版本的选择,选择Python2还是Python3呢?如果我们纯粹学习Python这门语言,那么小白建议选择Python3。而且,Python2的支持年限是到2020年,那我们为什么不选择Python3呢?

关于怎么安装Python,本文不做过多介绍。如果您使用的是Gnu/Linux或Mac OS,那么这些系统上默认是自带Python环境的,可以直接拿来使用。如果您用的是Windows,那么Python的安装也是比较简单的。

学习Python要有趁手的工具才行。首先,我们要有自己喜欢的编辑环境。那么,我们可以选择编辑器及IDE。编辑器这里小白推荐使用Vim或Emacs,一个是编辑器之神,一个是神的编辑器,两者都非常强大。如果要使用IDE,墙裂推荐使用PyCharm。

专心看本公众号文章


小白是从2014年开始自学Python的,中间经历了各种的问题,写了很多笔记。也写了很多与工作相关的脚本。后续的文章会娓娓道来。还请大家多多关注。小白所写每一篇文章都是精心写作,并上机实践,确保案例的可行性及正确性。

动手实践才是硬道理


天下武功,唯快不破。学习编程,唯不动手而学不会。学习编程最大的忌讳就是不动手实践。学习了一定的理论知识,并没有经过动手实践及长期的大量练习,会有一种学完即忘的感觉。所以,学习编程的宗旨是:动手、实践、实践、再实践!

每天坚持一定的代码量,不管多少。可以为了解决一个问题,可以为了好玩等等目的。保持一定的代码量,这样才能做到说写代码,就能写出代码的效果。

总结


本公众号更多的是关注Python的学习,就像前面的文章说的一样,但不限于Python。期间还会有一些Linux运维相关的文章。另外,小白是非常喜欢TeX及Keynote的,如果有机会也会在公众号里跟大家分享。

原文发布于微信公众号 - 小白的技术客栈(XBDJSKZ)

原文发表时间:2017-08-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏CSDN技术头条

帮你提升 Python 的 27 种编程语言

【编者按】本文作者是 Python 的设计者之一 Nick Coghlan,总结了提升 Python 的 27 种编程语言,包括过程式编程、面向对象的数据模型、...

2658
来自专栏顶级程序员

面试分享:一年经验初探阿里巴巴前端社招

一般阿里社招都是招3-5年的P6+高级工程师,当初自己一年经验也没有想过有这个面试机会。 虽然没想着换工作,但是经常关注一些招聘网站的信息,某一天,在某bos...

4887
来自专栏Python中文社区

Why Not Python?

Python是一款简单强大又好用的动态语言,但我不解的是,为何这样一个好用的语言,在国外已经流行了十几年,但在国内不要说流行,问很多人的答案都是...

2478
来自专栏数据科学与人工智能

【数据】数据科学家喜欢Jupyter Notebook的10个原因

在过去的二十年中,Python越来越多地用于科学计算和数据分析。 今天,Python的主要优势以及它如此受欢迎的主要原因之一是它将科学计算功能带给了许多研究领域...

3197
来自专栏钱曙光的专栏

一周极客热文:一位码农的几点思考

一位码农总结了自己的编程生涯,总结了以下几点: 对框架了解的越多,你才能用得更好。——更好意味着更快,更可靠,写出的代码更容易向上兼容。但另一方面来说,你得先停...

23910
来自专栏企鹅号快讯

对5种主流编程语言的吐槽

不可否认,想要成为一名优秀的程序员确实是需要掌握多种编程语言。通过这几年的自虐式学习,小编也慢慢的掌握了这些编程语言。接下来要为大家,介绍五款让人又爱又恨的编程...

2827
来自专栏程序人生

如何用正确的姿势打开 TDD?

TDD(Test Driven Development)一直是程序界追求的一种开发境界。要想真正做到对项目有帮助的 TDD,并不是一件容易的事情。我见过不少团队...

28210
来自专栏coding for love

ES6常用新特性学习

说起ES6,想必大家都不陌生了。ES6 的第一个版本,在 2015 年 6 月发布,正式名称是《ECMAScript 2015 标准》(简称 ES2015)。这...

753
来自专栏我是攻城师

4个理由告诉你Java为何排行第一

2715
来自专栏BestSDK

看完Python 简史,你就知道他为啥这么火了

Python 的起源 Python的作者,Guido von Rossum,确实是荷兰人。1982年,Guido从阿姆斯特丹大学(University of A...

50710

扫码关注云+社区