Python 简明教程 --- 0,前言
微信公众号:码农充电站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.x,Python 2.x,Python 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 有如下特点:
- 解释型语言
编程语言有编译型语言和解释型语言之分。
编译型语言需要先将源代码,通过该语言的编译器转换成二进制可执行程序,才能运行,比如C 语言,C++,Java 等。
解释型语言则不需要进行编译,直接通过其虚拟机/解释器运行源代码即可,比如Python 语言,在运行时直接使用Python 解释器 运行源代码即可。
需要注意的是,所有程序的运行都是通过CPU 来执行的,而CPU 只认识二进制(即0/1)。所以,任何语言编写的代码,都得变成二进制,才能被执行。
因此,解释型语言并不是说没有经过编译阶段,只是对于使用者(程序员)来说,可以不关心编译阶段,因为解释器在处理代码时会实时快速的将代码转换成二进制,紧接着就会执行二进制代码。
- 面向对象
使用Python 语言不仅可以面向过程编程,也可以面向对象编程(因为Python 中也有类Class 的概念)。这也是对初学者比较友好的一点,你可以使用自己喜欢,习惯的编程方式来编写Python 代码。
- 交互模式
Python 解释器就是一个交互式终端,你输入一段代码,它可以实时的将结果反馈给你。这样,你就可以方便的使用它测试,验证你的想法。
- 可移植
因为Python 语言建立在Python 虚拟机/解释器之上,所以,只要你在不同的平台安装了Python 解释器,那么你的Python 代码就可以在不同的平台上运行。
- 可扩展
Python 俗称胶水语言,意思就是你可以很方便的,将Python 语言嵌入其它编程语言(反过来亦可)。这样可以利用不同语言的优点,更好的达到我们的目的。
- 极其丰富的模块
Python 的功能强大性和方便性,一个很重要的原因是因为它有很多便利强大的模块,让你可以使用简单几行代码,实现复杂的功能。
在后面的学习中,我们会介绍很多实用的模块。
4,Python 的流行度
根据TIOBE 指数,Python 在近几年的占比一直呈上升趋势,尤其是近一年来,一直稳居前三名。
下图是TIOBE 指数统计的10 种流行的编程语言,在近20 年的变化趋势。

Python 能取得现在的成绩,跟它的“简单,强大” 的特点是分不开的。
又由于近几年大数据和人工智能的不断发展,而Python 在这些领域的适用性,使得Python 的地位越来越不可替代。
5,关于本书读者
任何人都可以学习Python,但并不是谁都需要学习Python,如果你属于以下情况之一,那么你可能需要学习Python:
- 你从事IT 行业(比如程序员),但之前没有学习过Python,那么学习Python 可以加大你技能的广度。
- 你不是专业人士,但将来想从事编码工作,那么Python 可以作为你的入门语言。
- 你不是专业人士,将来也不想从事编码工作,只是对它感兴趣,喜欢钻研体验新鲜事物,那你也可以学习Python,简单的学习也花费不了多少时间。
- 你不是专业人士,将来也不想从事编码工作,但自己日常办公经常使用电脑和网络,并且你的工作有很多重复性,或者需要分析一些数据。那么你可以学习Python,自己写一些简单的脚本,来替你完成一些日常琐碎的工作。
只要你属于以上情况之一,那么本教程适合你。
接下来,就让我们愉快的学习Python 吧!
欢迎关注作者公众号,获取更过技术干货。

Python 简明教程 --- 0,前言的更多相关文章
- Python 简明教程 --- 3,Python 基础概念
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 控制复杂性是计算机编程的本质. -- Brian Kernighan 了解了如何编写第一个Pytho ...
- Python 简明教程 --- 2,第一个Python 程序
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 如果你发现特殊情况太多,那你肯定是用错方法了. -- Carig Zerouni 当你在自己的电脑上 ...
- Python 简明教程 --- 1,搭建Python 环境
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 人生苦短,我用Python. -- 龟叔T恤 Python 是一门解释型语言,所以要想运行Pytho ...
- Python 简明教程 --- 4,Python 变量与基本数据类型
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 任何一个人都会写出能够让机器理解的代码,只有好的程序员才能写出人类可以理解的代码. -- Marti ...
- Python 简明教程 --- 5,Python 表达式与运算符
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 靠代码行数来衡量开发进度,就像是凭重量来衡量飞机制造的进度. -- Bill Gates 目录 1, ...
- 【笔记】Python简明教程
Python简明教程,此资源位于http://woodpecker.org.cn/abyteofpython_cn/chinese/ s=u'中文字符' #u表示unicode,使用u之后能正常显示中 ...
- python中global的用法——再读python简明教程
今天看了知乎@萧井陌的编程入门指南,想重温一下 <python简明教程>,对global的用法一直不太熟练,在此熟练一下,并实践一下python中list.tuple.set作为参数的区别 ...
- python简明教程
Python简明教程 MachinePlay关注 0.7072018.09.26 01:49:43字数 2,805阅读 9,287 Python一小时快速入门 1.Python简介 pylogo. ...
- Python 简明教程 --- 14,Python 数据结构进阶
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 如果你发现特殊情况太多,那很可能是用错算法了. -- Carig Zerouni 目录 前几节我们介 ...
随机推荐
- spring boot 项目 mvn clean install 报 "Unable to find main class" 的解决方法
按照步骤来总会解决的 检查pom.xml中是否加入了spring boot maven插件 <build> <plugins> <plugin> <group ...
- ApiPost V3创事记:一个痛并快乐着的创业故事
前言 无论是对于国家,还是对于我们个人,2020年4月,是注定是一个不同往年的4月.一场突如起来的疫情打破了我们原来的生活曲线,让我们知道了什么是苦难,什么是团结,什么是坚持,什么是胜利. 一.大幕开 ...
- Mybatis源码详解系列(四)--你不知道的Mybatis用法和细节
简介 这是 Mybatis 系列博客的第四篇,我本来打算详细讲解 mybatis 的配置.映射器.动态 sql 等,但Mybatis官方中文文档对这部分内容的介绍已经足够详细了,有需要的可以直接参考. ...
- 编译原理-第四章 语法分析-4.6 简单LR技术
简单LR分析方法 一.LR语言分析器模型与算法 1.输入.输出.栈和方法 2.LR语法分析表 3.LR分析程序 4.例 例1: 例2: 二.LR语法分析算法 1.LR语法分析算法的定义和概念 定义: ...
- java中functional interface的分类和使用
目录 简介 Functional Interface Function:一个参数一个返回值 BiFunction:接收两个参数,一个返回值 Supplier:无参的Function Consumer: ...
- Robot Framework -002 在Windows10上的安装
机器人框架是使用Python实现的,并且还支持Jython(JVM),IronPython(.NET)和PyPy. 在安装框架之前,一个明显的前提条件是至少安装这些解释器之一. 下面列出了安装Robo ...
- SSH公钥登录和RSA非对称加密
SSH登录方式 接触过Linux服务器的同学肯定用过SSH协议登录系统,通常SSH协议都有两种登录方式:密码口令登录和公钥登陆. 一.密码口令(类似于账号密码登录) 1.客户端连接服务器,服务器把公钥 ...
- python自动化测试开发利器ulipad最佳实践(可写python测试代码也可编写selenium、Appium等)...
介绍 UliPad是一个国人开发的python轻量级编辑器,导向和灵活的编程器.它如类浏览器,代码自动完成许多功能,如:HTML查看器,目录浏览器,向导等. 下载与安装 下载地址:https://py ...
- Red 编程语言 2019 开发计划:全速前进!
开发四年只会写业务代码,分布式高并发都不会还做程序员? >>> Red 编程语言开发团队昨日发布了一篇 "Full steam ahead" 的文章,对其 2 ...
- 项目Alpha冲刺 Day12
1)站立式会议: 2)今日安排: 项目演示. 3)项目情况 项目进展:系统已实现预期的所有的功能.问题困难:系统测试不够全面,主要做功能测试,对于非功能测试,如压力测试.效能测试.安全性等并未测试.心 ...