1.1 python的特点
如下是李刚老师《疯狂python讲义》的学习笔记
如有侵权,联系删除
努力是信仰,坚持是脚步,代码改变世界!
--Java占据了世界上绝大部分电商、金融、通信等服务端应用开发,而C、C++占据了世界上绝大部分贴近操作系统的硬件编程。
--Python是一种面向对象、解释型、弱类型的脚本语言,它是一种更能强大而完善的通用型语言。
面向对象(Object Oriented,OO)和面向过程(Procedure Oriented,PO)
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。
面向对象不具体细分步骤,或者说,把这些具体的步骤分类,每个类称为一个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。
例如用程序编写五子棋游戏:
面向过程就要划分各个步骤:1、开始游戏,2、黑子先走,3、绘制画面,4、判断输赢,5、轮到白子,6、绘制画面,7、判断输赢,8、返回步骤2,9、输出最后结果。
面向对象则是分为3种对象:1、黑白双方,这两方的行为是一模一样的,2、棋盘系统,负责绘制画面,3、规则系统,负责判定诸如犯规、输赢等。
参考:https://zhidao.baidu.com/question/2089034.html
解释型和编译型
不同的平台(操作系统)所能识别的机器码不同,
编译型语言通过针对某一平台的编译器,将高级语言一次性全部编译成该平台所能识别的机器码,并包装成该平台所能识别的可执行程序的格式。被编译后的特定格式的机器码可在该平台上独立运行。
解释型语言通过专门的解释器,将高级语言逐条读取,逐条编译,逐条在某一平台上运行(我觉得运行,就是所谓的“解释”)。
至于说编译型语言跨平台就是要改变编译器,比较难,解释型语言跨平台就是改变解释器,比较简单,我还没有体会到不同??
解释型的python语言具有跨平台的能力,只要为python提供相应平台的解释器即可!!
就如python为windows,linxu,mac os x准备了不同的解释器,
强类型语言和弱类型语言
强类型语言不允许不同类型变量相加减,弱类型语言允许不同类型变量相加减。
所以python应该是强类型的。
参考:https://www.jianshu.com/p/6191e15de0bd
脚本语言和编译语言
脚本语言也可看做编程语言,脚本语言交由可执行程序解释执行;
编译语言通过编译器编译代码文件生成可执行程序(二进制文件),交由cpu解释执行;
参考:https://zhidao.baidu.com/question/360310158063705932.html