010 深入理解Python语言
目录
一、概述
- 计算机技术的演进
- 编程语言的多样初心
- Python语言的特点
- "超级语言"的诞生
二、计算机技术的演进
2.1 计算机技术的演进过程

| - | - | - |
|---|---|---|
| 2017- | 人工智能时代 | 人类的问题 |
| 2008-2016 | 复杂信息系统时代 | 数据问题 |
| 1981-2008 | 网络和视窗时代 | 交互问题 |
| 1946-1981 | 计算机系统结构时代 | 计算机能力问题 |
三、编程语言的多样初心
3.1 编程语言有哪些?
Basic, C, C++, C#, CSS, Fortran, Go, HTML, Java, JavaScript, Lisp, Lua, Matlab, Object C, Pascal, Perl, PHP, PostScript, Python, Ruby, Scala, SQL, Swift, VBA, VB.NET, Verilog, VHDL, Visual Basic
编程语言,也是一个江湖!
3.2 不同编程语言的初心和适用对象
| 编程语言 | 学习内容 | 语言本质 | 解决问题 | 适用对象 |
|---|---|---|---|---|
| C | 指针、内存、数据类型 | 理解计算机系统结构 | 性能 | 计算机类专业 |
| Java | 对象、跨平台、运行时 | 理解主客体关系 | 跨平台 | 软件类专业 |
| C++ | 对象、多态、继承 | 理解主客体关系 | 大规模关系 | 计算机类专业 |
| VB | 对象、按钮、文本框 | 理解交互逻辑 | 桌面应用 | 不确定 |
| Python | 编程逻辑、第三方库 | 理解问题求解 | 各类问题 | 所有专业 |
各编程语言所处历史时期和使命不同,Python是计算时代演进的选择!
3.3 2018年以后的计算环境…
计算机性能不再是解决一般问题的瓶颈
移动互联网广泛普及
大数据、云计算、物联网、信息安全、人工智能等需求爆发
解决日益增长的计算需求,用什么语言?
四、Python语言的特点
- Python语言是通用语言
- Python语言是脚本语言
- Python语言是开源语言
- Python语言是跨平台语言
- Python语言是多模型语言
Guido van Rossum
Python语言创立者
2002年,Python 2.x
2008年,Python 3.x

五、Python特点与优势
| 语法简洁 | 生态高产 |
|---|---|
| C代码量的10% | >13万第三方库 |
| 强制可读性 | 快速增长的计算生态 |
| 较少的底层语法元素 | 避免重复造轮子 |
| 多种编程方式 | 开放共享 |
| 支持中文字符 | 跨操作系统平台 |
六、如何看待Python语言?
人生苦短,我学Python
- C/C++:Python归Python,C归C
- Java:针对特定开发和岗位需求
- HTML/CSS/JS:不可替代的前端技术,全栈能力
- 其他语言:R/Go/Matlab等,特定领域
Python是最高产的程序设计语言及……
- 掌握抽象并求解计算问题综合能力的语言
- 了解产业界解决复杂计算问题方法的语言
- 享受利用编程将创新变为实现乐趣的语言
工具决定思维:关注工具变革的力量!

七、"超级语言"的诞生
7.1 机器语言
- 一种二进制语言,直接使用二进制代码表达指令
- 计算机硬件(CPU)可以直接执行,与具体CPU型号有关
- 完成 2+3 功能的机器语言
11010010 00111011--> 2+3
7.2 汇编语言
- 一种将二进制代码直接对应助记符的编程语言
- 汇编语言与CPU型号有关,程序不通用,需要汇编器转换
- 完成 2+3 功能的汇编语言
add 2,3,result-->2+3
7.3 高级语言
- 更接近自然语言,同时更容易描述计算问题
- 高级语言代码与具体CPU型号无关,编译后运行
- 完成 2+3 功能的高级语言
result = 2 + 3-->2+3
7.4 编程语言种类的发展
| 语言 | 介绍 |
|---|---|
| 超级语言 | 粘性整合已有程序,具备庞大计算生态 |
| 高级语言 | 接近自然语言,编译器,与CPU型号无关 |
| 汇编语言 | 有助记符,汇编器,与CPU型号有关 |
| 机器语言 | 代码直接执行,与CPU型号有关 |
7.5 超级语言
- 具有庞大计算生态,可以很容易利用已有代码功能
- 编程思维不再是刀耕火种,而是集成开发
- 完成 2+3 功能的超级语言
Python: 唯一的"超级语言"!
Python前进的步伐不可阻挡
八、小结
- 计算机系统结构时代到人工智能时代的演进路线
- 五种编程语言的初心和历史使命
- Python语言的通用性、简洁性和生态性
- Python是以计算生态为标志的"超级语言"
010 深入理解Python语言的更多相关文章
- 深入理解python语言
2008年,安卓操作系统诞生:PC时代向移动时代转换 互联网,视窗 2017/5/27柯洁最终0:3AlphaGo 计算机技术的演进过程 不同编程语言的设计初心和适用对象 C语言核心解决的是性能问题, ...
- 第三章 深入理解python语言
计算机技术的演进过程 1946-1981年 计算机系统结构时代(35年) 解决计算机能力的问题 1981-2008年 网络和视窗时代(27年) 解决交互问题 2008-2016年 复杂信息系统时代(8 ...
- 理解Python语言里的异常(Exception)
Exception is as a sort of structured "super go to".异常是一种结构化的"超级goto". 作为一个数十年如一日 ...
- 理解 Python 语言中的 defaultdict
众所周知,在Python中如果访问字典中不存在的键,会引发KeyError异常(JavaScript中如果对象中不存在某个属性,则返回undefined).但是有时候,字典中的每个键都存在默认值是非常 ...
- Python语言学习之Python入门到进阶
人们常说Python语言简单,编写简单程序时好像也确实如此.但实际上Python绝不简单,它也是一种很复杂的语言,其功能特征非常丰富,能支持多种编程风格,在几乎所有方面都能深度定制.要想用好Pytho ...
- 【学习笔记】PYTHON语言程序设计(北理工 嵩天)
1 Python基本语法元素 1.1 程序设计基本方法 计算机发展历史上最重要的预测法则 摩尔定律:单位面积集成电路上可容纳晶体管数量约2年翻倍 cpu/gpu.内存.硬盘.电子产品价格等都遵 ...
- 使用Python语言理解递归
递归 一个函数在执行过程中一次或多次调用其本身便是递归,就像是俄罗斯套娃一样,一个娃娃里包含另一个娃娃. 递归其实是程序设计语言学习过程中很快就会接触到的东西,但有关递归的理解可能还会有一些遗漏,下面 ...
- 如何系统地自学一门Python 语言(转)
转自:http://www.phpxs.com/post/4521 零基础情况下,学一门语言充实下自己,Python,简洁.优美.容易使用,是一个很好的选择.那么如何系统地自学Python呢? 有的人 ...
- 《Selenium2自动化测试实战--基于Python语言》 --即将面市
发展历程: <selenium_webdriver(python)第一版> 将本博客中的这个系列整理为pdf文档,免费. <selenium_webdriver(python)第 ...
随机推荐
- java虚拟机学习笔记(五)---运行时的数据区域
Java虚拟机所管理的内存包括以下几个运行时的数据区域:方法区,堆,虚拟机栈,本地方法栈,程序计数器.下面对其进行介绍: 程序计数器 它是一块较小的内存空间,可以看做当前线程做执行的字节码的信号指示器 ...
- android ——活动的生命周期
在其生命周期内,activity在运行.暂停和停止三种可能的状态间进行转换,不同状态之间互相转换的时候的调用不同的方法,重写这些方法就能在活动切换,被销毁时保存或传输数据,在被启动.被切换出来时接收数 ...
- 基于RBAC的权限框架
RBAC权限框架(Role-Based Access Control)基于角色的权限访问控制的框架,通过用户-角色-权限的关联,非常方便的进行权限管理,在这里不再说明什么是RBAC,请自行百度. 谢谢 ...
- 初识JavaScript和面向对象
1.javascript基本数据类型: number: 数值类型 string: 字符串类型 boolean: 布尔类型 null: 空类型 undefault:未定义类型 object: 基本数据类 ...
- 开发规范 小白进阶 python代码规范化
开发规范 软件开发,规范项目的目录结构,代码规范,遵循 PeP8规范等等,让你更加清晰的,合理开发 一功能分类(文件名) settings.py配置文件 配置文件放一些静态参数, 划归固定的路径,文件 ...
- File Compression and Archiving in linux (linux 中文件的归档)
1. Compressing Files at the Shell Prompt Red Hat Enterprise Linux provides the bzip2, gzip, and zip ...
- 40道经典java多线程面试题
40道经典java多线程面试题 题目来源 看完了java并发编程的艺术,自认为多线程"大成",然后找了一些面试题,也发现了一些不足. 一下问题来源于网上的博客,答案均为本人个人见解 ...
- 大白话5分钟带你走进人工智能-第36节神经网络之tensorflow的前世今生和DAG原理图解(4)
目录 1.Tensorflow框架简介 2.安装Tensorflow 3.核心概念 4.代码实例和详细解释 5.拓扑图之有向无环图DAG 6.其他深度学习框架详细描述 6.1 Caffe框架: 6.2 ...
- Java Selenium (十二) 操作弹出窗口 & 智能等待页面加载完成 & 处理 Iframe 中的元素
一.操作弹出窗口 原理 在代码里, 通过 Set<String> allWindowsId = driver.getWindowHandles(); 来获取到所有弹出浏览器的句柄, 然 ...
- Oracle - Sequences
创建计数器 --最小值1,最大值999999999999999999999999999,从1开始,每次自增1,缓存20 --SQL语句: -- Create sequence create seque ...