微信公众号:码农充电站pro

个人主页:https://codeshellme.github.io

Life is short, you need Python!

—— Bruce Eckel

0,关于本书

本书是一本Python 教程,力图简洁易懂。

本书面向初学者,即使你没有任何编程经验,也可参照本教程学习。

由于Python 官方已在2020 年1 月 1日停止对Python 2.x 的更新,所以本书的所有示例都将使用Python 3 来进行测试。

注意:

如果你之前已经学过Python2.x,你会发现,从Python2.x 转向Python3.x 只需要花费很少的时间。

所以,对于初学者,并不需要刻意的纠结应该学习Python2.x 还是Python3.x

1,什么是Python

Python 是一门编程语言,简单易学(对初学者友好),且功能强大。

简单易学

相对于其它编程语言,比如C 语言,C++,Java等,这三门语言称得上是大型语言,因为它们的语法结构庞大,有较多复杂的语言概念。

而Python 的语法比较简单,不涉及较底层的计算机知识,它更偏向于解决实际问题,而不是晦涩难懂的理论知识。

如果你没有编程基础,Python 非常适合作为你的入门语言。

功能强大

虽说Python 简单易学,但并不意味着它能做的事情就不多。恰恰相反,Python 有很多现成的,成熟的模块供你使用,可以让你高效快速的开发应用。在人工智能领域,Python的便利性使其成为用于机器学习和人工智能的最受欢迎的语言。

你可以使用Python 做这些事情:

  • 编写自动化脚本,处理琐碎的工作。
  • 构建大型网站,比如国外的YouTube,国内的豆瓣。
  • 编写爬虫软件,采集收集有用的信息。
  • 做数据分析,从数据中挖掘价值。
  • 做机器学习,构建人工智能应用。

2,Python 的发展

Python 语言是由荷兰程序员Guido van Rossum(俗称“龟叔”) 于1989 年发明,到现在已有30 年的历史。龟叔给Python 的定位是优雅、明确、简单

Python 是蟒蛇的意思,之所以叫这个名字,是因为Guido van Rossum 当时很喜欢看一部名叫《蟒蛇马戏团》英剧。

从Python 诞生到现在,它经过了三个大的版本,分别是Python 1.xPython 2.xPython 3.x

其中Python 2.7 是一个广泛使用的版本,也是Python2.x 的最后一个版本。目前,最新的版本是Python 3.8

Python 3.x 相比Python 2.x 有较大的改变,Python 3.x 为了解决一些历史遗留问题,并不向前兼容Python 2.x,但它们的基本语法并没有多大的改变。

下表是Python 发展的几个重要的时间点:

时间 版本
1991 年 Python 0.9 发布,这是Python 的第一个发布版本
1994 年 Python 1.0 发布
2000 年 Python 2.0 发布
2008 年 Python 3.0 发布
2010 年 Python 2.7 发布
2019 年 Python 3.8 发布
2020 年 Python 官方停止对Python 2.x 的更新

3,Python 特点

Python 有如下特点:

  1. 解释型语言

编程语言有编译型语言解释型语言之分。

编译型语言需要先将源代码,通过该语言的编译器转换成二进制可执行程序,才能运行,比如C 语言,C++,Java 等。

解释型语言则不需要进行编译,直接通过其虚拟机/解释器运行源代码即可,比如Python 语言,在运行时直接使用Python 解释器 运行源代码即可。

需要注意的是,所有程序的运行都是通过CPU 来执行的,而CPU 只认识二进制(即0/1)。所以,任何语言编写的代码,都得变成二进制,才能被执行。

因此,解释型语言并不是说没有经过编译阶段,只是对于使用者(程序员)来说,可以不关心编译阶段,因为解释器在处理代码时会实时快速的将代码转换成二进制,紧接着就会执行二进制代码。

  1. 面向对象

使用Python 语言不仅可以面向过程编程,也可以面向对象编程(因为Python 中也有类Class 的概念)。这也是对初学者比较友好的一点,你可以使用自己喜欢,习惯的编程方式来编写Python 代码。

  1. 交互模式

Python 解释器就是一个交互式终端,你输入一段代码,它可以实时的将结果反馈给你。这样,你就可以方便的使用它测试,验证你的想法。

  1. 可移植

因为Python 语言建立在Python 虚拟机/解释器之上,所以,只要你在不同的平台安装了Python 解释器,那么你的Python 代码就可以在不同的平台上运行。

  1. 可扩展

Python 俗称胶水语言,意思就是你可以很方便的,将Python 语言嵌入其它编程语言(反过来亦可)。这样可以利用不同语言的优点,更好的达到我们的目的。

  1. 极其丰富的模块

Python 的功能强大性和方便性,一个很重要的原因是因为它有很多便利强大的模块,让你可以使用简单几行代码,实现复杂的功能。

在后面的学习中,我们会介绍很多实用的模块。

4,Python 的流行度

根据TIOBE 指数,Python 在近几年的占比一直呈上升趋势,尤其是近一年来,一直稳居前三名。

下图是TIOBE 指数统计的10 种流行的编程语言,在近20 年的变化趋势。



Python 能取得现在的成绩,跟它的“简单,强大” 的特点是分不开的。

又由于近几年大数据和人工智能的不断发展,而Python 在这些领域的适用性,使得Python 的地位越来越不可替代。

5,关于本书读者

任何人都可以学习Python,但并不是谁都需要学习Python,如果你属于以下情况之一,那么你可能需要学习Python:

  • 你从事IT 行业(比如程序员),但之前没有学习过Python,那么学习Python 可以加大你技能的广度。
  • 你不是专业人士,但将来想从事编码工作,那么Python 可以作为你的入门语言。
  • 你不是专业人士,将来也不想从事编码工作,只是对它感兴趣,喜欢钻研体验新鲜事物,那你也可以学习Python,简单的学习也花费不了多少时间。
  • 你不是专业人士,将来也不想从事编码工作,但自己日常办公经常使用电脑和网络,并且你的工作有很多重复性,或者需要分析一些数据。那么你可以学习Python,自己写一些简单的脚本,来替你完成一些日常琐碎的工作。

只要你属于以上情况之一,那么本教程适合你。

接下来,就让我们愉快的学习Python 吧!


欢迎关注作者公众号,获取更过技术干货。

Python 简明教程 --- 0,前言的更多相关文章

  1. Python 简明教程 --- 3,Python 基础概念

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 控制复杂性是计算机编程的本质. -- Brian Kernighan 了解了如何编写第一个Pytho ...

  2. Python 简明教程 --- 2,第一个Python 程序

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 如果你发现特殊情况太多,那你肯定是用错方法了. -- Carig Zerouni 当你在自己的电脑上 ...

  3. Python 简明教程 --- 1,搭建Python 环境

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 人生苦短,我用Python. -- 龟叔T恤 Python 是一门解释型语言,所以要想运行Pytho ...

  4. Python 简明教程 --- 4,Python 变量与基本数据类型

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 任何一个人都会写出能够让机器理解的代码,只有好的程序员才能写出人类可以理解的代码. -- Marti ...

  5. Python 简明教程 --- 5,Python 表达式与运算符

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 靠代码行数来衡量开发进度,就像是凭重量来衡量飞机制造的进度. -- Bill Gates 目录 1, ...

  6. 【笔记】Python简明教程

    Python简明教程,此资源位于http://woodpecker.org.cn/abyteofpython_cn/chinese/ s=u'中文字符' #u表示unicode,使用u之后能正常显示中 ...

  7. python中global的用法——再读python简明教程

    今天看了知乎@萧井陌的编程入门指南,想重温一下 <python简明教程>,对global的用法一直不太熟练,在此熟练一下,并实践一下python中list.tuple.set作为参数的区别 ...

  8. python简明教程

    Python简明教程 MachinePlay关注 0.7072018.09.26 01:49:43字数 2,805阅读 9,287 Python一小时快速入门 1.Python简介   pylogo. ...

  9. Python 简明教程 --- 14,Python 数据结构进阶

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 如果你发现特殊情况太多,那很可能是用错算法了. -- Carig Zerouni 目录 前几节我们介 ...

随机推荐

  1. 快速从零开始安装Laravel5.2教程

    前面 本文默认你Win电脑什么都没装,也就是从零开始安装Laravel,并且环境都由我来指定分配哈! 环境 首先搭建运行环境,先到 PhpStudy官网 下载PhpStudy的Windows版本.然后 ...

  2. springmvc配置数据源方式

    1 阿里巴巴的druid数据源 <!-- 配置数据源 使用的是Druid数据源 -->-<bean destroy-method="close" init-met ...

  3. 关于“xxx”object is not callable的异常

    参考博文:https://blog.csdn.net/yitiaodashu/article/details/79016671 所谓callable对象是指一个后边可以加()的对象,比如函数, 所以这 ...

  4. 破解idea2019版本至2089年(windows系统)

    1.首先必须安装idea,然后找到安装目录下的bin目录下面 2.编辑俩个以.exe.vmoptions的文件(俩个文件的最后一行都得这样写) 3.重新打开idea,找到help下面的Register ...

  5. Spring Cloud OpenFeign使用教程

    文章目录 Spring Cloud OpenFeign Demo 怎么配置OpenFeignServer 怎么配置OpenFeignClient 多个参数传递问题 FeignClient的日志问题 多 ...

  6. eclipse 创建maven项目失败

    问题描述: eclipse 初次创建maven项目报错 可能是maven-archetype-quickstart:1.1.jar 包失效了或者没有? 有人说把这个jar包放在maven本地仓库里 我 ...

  7. Intellij IDEA 使用Spring-boot-devTools

    转载地址:https://blog.csdn.net/u013938484/article/details/77541050 转载于:https://blog.51cto.com/881206524/ ...

  8. log4j MDC NDC详解

    NDC ( Nested Diagnostic Context )和 MDC ( Mapped Diagnostic Context )是 log4j 种非常有用的两个类,它们用于存储应用程序的上下文 ...

  9. 关于:Express会被Koa2取代吗?

    知会上看到有个问题<Express会被Koa2取代吗?>.刚好对Express.koa有点小研究,于是简单回答了一下. 1.先说结论 目前没有看到Express会被koa2取代的迹象. 目 ...

  10. 家用PC机打造VSphere5.1 测试环境:之部署VCenter Server 5.1

    家用PC机打造VSphere5.1 测试环境前言:实践出真知,同样学习VMware VSphere 的朋友,也需要不断的测试总结,再测试再总结只有不断的积累才能学好,但是动辄几万的服务器不是所有朋友都 ...