01python简介
目录
1. Python起源
2. 解释器
3. Python 的设计目标
4. Python 的设计哲学
5. 为什么选择 Python ?
6. Python 特点
7. Python 的优缺点
1. Python起源
1989年 吉多.范罗苏姆 打发时间 开发一个新的解释程序 用了一年时间优化, 1991年 第一个Python解释器 诞生 =>基于C语言
2. 解释器
计算机不能直接理解任何除机器语言以为的语言, 所以必须把程序员所写的程序语言翻译成机器语言, 这种将其他语言翻译成机器语言的工具, 被称为编译器
编译器翻译的范式有两种: 一个是编译 , 另外一个是解释 . 两种方式的区别在于翻译时间点不同 . 当翻译器以 解释方式运行的时候 , 也称之为解释器 .
编译型语言 : 程序在执行前需要一个专门的编译过程,把程序编译成为机器语言的文件. 运行时不需要重新翻译, 直接使用编译的结构就行了 . 程序执行效率高 , 依赖编译器, 跨平台性差些 . 如 C , C++
解释型语言 : 解释型语言编写的程序不进行预先编译, 以文本方式储存程序代码, 会将代码一句一句直接运行 . 在发布程序时 . 看起来神了到编译工序 , 但是在运行的时候, 必须先解释在运行
对比 :
速度 ---- 编译型语言比解释型语言执行速度快
跨平台性 ---- 解释型语言比编译型语言跨平台性好
3. Python 的设计目标
一门简单直观的语言 并与主要竞争者一样强大
开源 , 以便任何人都可以为它做贡献
代码像纯英语那样容易理解
使用于短期开发的日常任务
4. Python 的设计哲学
优雅
明确
简单
Python 开发者的哲学是: 用一种方法, 最好是只有一种方法来做一件事
如果面临多种选择, Python 开发者一般会拒绝花俏的语法 , 而选择 明确灭有或者很少歧义的语法
在 Python 社区, 吉多被称为 "仁慈的独裁者"
5. 为什么选择 Python ?
代码量少
同样的问题, 用不同的语言解决, 代码量差距还是很多的, 一般情况下 Python 是 Java 的 1/5, 人生苦短,我用 Python.
6. Python 特点
Python 是完全面向对象的语言
函数 , 模块 , 数字 , 字符串 ,都是对象 , 在 Python 中一切皆对象
完全支持继承, 重载, 多重继承
支持重载运算符, 也支持泛型设计
Python 拥有一个强大的标准库, Python 语言的核心只包含 数字,字符串,列表,字典,文件 等常见类型和函数, 而由 Python 标准库提供了系统管理, 网络通信, 文本处理, 数据库接口, 图形系统, XML处理 等额外的功能
Python 社区提供了大量的第三方模块, 使用方式与标准库相似. 它们的功能覆盖 科学计算, 人工智能, 机器学习, Web 开发, 数据库接口, 图形系统 多个领域
面向对象的思维方式
面向对象 是一种思维方式, 也是一门 程序设计技术
要解决一个问题的, 首先考虑由谁来做, 怎么做事情 是 谁的职责, 最后把事情做好就行!
要解决复杂的问题, 就可以找多个不同的对象, 各司其职, 共同实现, 最终完成需求
7. Python 的优缺点
优点 :
简单, 易学
免费, 开源
面向对象
丰富的库
可扩展性(如果需要一段关键代码运行得更快或者希望某些算法不公开,可以把这部分程序用C 和 C++编写, 然后在 Python 程序中使用它们)
缺点 :
运行速度
国内市场较小
中文资料匮乏
---------------------
作者:懂懂kkw
来源:CSDN
原文:https://blog.csdn.net/jiandan1127/article/details/82850084
版权声明:本文为博主原创文章,转载请附上博文链接!
01python简介的更多相关文章
- 01-Python简介
人生苦短,我用 Python —— Life is short, you need Python 目标 Python 的起源 Python 解释器 是用 C 语言实现的,并能够调用 C 语言的库文件. ...
- python基础班-淘宝-目录.txt
卷 TOSHIBA EXT 的文件夹 PATH 列表卷序列号为 AE86-8E8DF:.│ python基础班-淘宝-目录.txt│ ├─1-1 Linux基础│ ├─01-课程简介│ │ 01-课程 ...
- 01- Python语言简介
Python的简介: 创始人:Guido van Rossum(创始人) 时间:1989年 圣诞节 Python的命名:源于一个喜剧团 Monty Python Python语言排名 目前Python ...
- ASP.NET Core 1.1 简介
ASP.NET Core 1.1 于2016年11月16日发布.这个版本包括许多伟大的新功能以及许多错误修复和一般的增强.这个版本包含了多个新的中间件组件.针对Windows的WebListener服 ...
- MVVM模式和在WPF中的实现(一)MVVM模式简介
MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...
- Cassandra简介
在前面的一篇文章<图形数据库Neo4J简介>中,我们介绍了一种非常流行的图形数据库Neo4J的使用方法.而在本文中,我们将对另外一种类型的NoSQL数据库——Cassandra进行简单地介 ...
- REST简介
一说到REST,我想大家的第一反应就是“啊,就是那种前后台通信方式.”但是在要求详细讲述它所提出的各个约束,以及如何开始搭建REST服务时,却很少有人能够清晰地说出它到底是什么,需要遵守什么样的准则. ...
- Microservice架构模式简介
在2014年,Sam Newman,Martin Fowler在ThoughtWorks的一位同事,出版了一本新书<Building Microservices>.该书描述了如何按照Mic ...
- const,static,extern 简介
const,static,extern 简介 一.const与宏的区别: const简介:之前常用的字符串常量,一般是抽成宏,但是苹果不推荐我们抽成宏,推荐我们使用const常量. 执行时刻:宏是预编 ...
随机推荐
- 十四. Python基础(14)--递归
十四. Python基础(14)--递归 1 ● 递归(recursion) 概念: recursive functions-functions that call themselves either ...
- 深入理解java虚拟机---垃圾回收(十一)
1.垃圾回收要解决的问题 可以通过配置虚拟机参数来打印出内存日志: -verbose:gc -XX:+PrintGCDetails 垃圾收集(Garbage Collection,GC),要设计一个G ...
- bootstrapTable 学习使用
Bootstrap离线API Bootstrap Table 离线API <input type="button" id="btn_searcher" v ...
- `define、parameter、localparam三者的区别(转)
`define: 可以跨模块的定义,写在模块名称上面,在整个设计工程都有效.一旦‘define指令被编译,其在整个编译过程中都有效.例如,通过另一个文件中的`define指令,定义的常量可以被其他文件 ...
- 201621123001《Java程序设计》第1周学习总结
1. 本周学习总结 认识java的三个层次:java语法 面向对象设计能力 应用 . 学习eclipse创建java文件的方法. 学习markdown的基本语法,了解写博客的几种常用形式. 了解JVM ...
- ubantu 安装nginx HTTP反向代理服务器
Nginx发音的“engine x”是一个免费的开源高性能HTTP和反向代理服务器,负责处理互联网上一些最大的网站的负载. 本教程将概述在Ubuntu 18.04机器上安装和管理Nginx的步骤. 安 ...
- todolist待办事项
使用html/css原生js实现待办事项列表: 支持添加待办事项,删除待办事项,切换待办事项的状态(正在进行,已经完成) 支持对正在进行以及已经完成事项编辑(单击内容即可编辑) 源代码:链接:http ...
- 认识MySQL中的索引
一.什么是索引 索引是一种将数据库中单列或者多列的值进行排序的结构,引用索引可以大大提高索引的速度. 二.索引的优缺点 优点:整体上提高查询的速度,提高系统的整体性能. 缺点:创建索引和维护索引都需要 ...
- Django中HtttpRequest请求
1.什么是HttpRequest HttpRequest,就是对请求对象的封装,里面封装的是请求过程中的所有信息.在Django中HttpRequest被封装成request对象并封装到视图处理函数中 ...
- 纯C:url base64
纯代码,来自互联网 base64.h #ifndef __BASE64_H__ #define __BASE64_H__ #ifdef __cplusplus extern "C" ...