编程语言主要从以下几个角度为进行分类,编译型和解释型、静态语言和动态语言、强类型定义语言和弱类型定义语言,每个分类代表什么意思呢,我们一起来看一下。

2.1 编译型与解释型。

编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快;

而解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后的程序运行的快的.

这是因为计算机不能直接认识并执行我们写的语句,它只能认识机器语言(是二进制的形式)

编译型

优点:编译器一般会有预编译的过程对代码进行优化。因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行效率高。可以脱离语言环境独立运行。

缺点:编译之后如果需要修改就需要整个模块重新编译。编译的时候根据对应的运行环境生成机器码,不同的操作系统之间移植就会有问题,需要根据运行的操作系统环境编

解释型

优点:有良好的平台兼容性,在任何环境中都可以运行,前提是安装了解释器(虚拟机)。灵活,修改代码的时候直接修改就可以,可以快速部署,不用停机维护。

缺点:每次运行的时候都要解释一遍,性能上不如编译型语言。

2.2动态语言和静态语言

通常我们所说的动态语言、静态语言是指动态类型语言和静态类型语言。

(1)动态类型语言:动态类型语言是指在运行期间才去做数据类型检查的语言,也就是说,在用动态类型的语言编程时,永远也不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来。Python和Ruby就是一种典型的动态类型语言,其他的各种脚本语言如VBScript也多少属于动态类型语言。

(2)静态类型语言:静态类型语言与动态类型语言刚好相反,它的数据类型是在编译其间检查的,也就是说在写程序时要声明所有变量的数据类型,C/C++是静态类型语言的典型代表,其他的静态类型语言还有C#、JAVA等。

2.3强类型定义语言和弱类型定义语言

(1)强类型定义语言:强制数据类型定义的语言。也就是说,一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。举个例子:如果你定义了一个整型变量a,那么程序根本不可能将a当作字符串类型处理。强类型定义语言是类型安全的语言。

(2)弱类型定义语言:数据类型可以被忽略的语言。它与强类型定义语言相反, 一个变量可以赋不同数据类型的值。

强类型定义语言在速度上可能略逊色于弱类型定义语言,但是强类型定义语言带来的严谨性能够有效的避免许多错误。另外,"这门语言是不是动态语言”与"这门语言是否类型安全”之间是完全没有联系的!

例如:Python是动态语言,是强类型定义语言(类型安全的语言); VBScript是动态语言,是弱类型定义语言(类型不安全的语言); JAVA是静态语言,是强类型定义语言(类型安全的语言)。

通过上面这些介绍,我们可以得出,python是一门动态解释性的强类型定义语言。

python是什么类型的编程语言-2.python是什么编程语言。相关推荐

  1. python指定返回类型_如何在python中指定方法返回类型列表 - python

    假设我有一个类似下面的方法 def validate(self, item:dict, attrs:dict)-> list: 如果我想更具体一点,告诉我我的返回类型是 验证消息? 我应该如何实 ...

  2. python int64_在Python中将Int64Index类型转换为整数索引 - python

    我是python的新手,但是,我必须完成一些任务,而我现在正努力解决一个问题.当表A中的其他一些参数对应于列表B中的值时,我尝试获取表A中元素的索引.表A还已经包含列"index" ...

  3. python中long类型_浅谈python 四种数值类型(int,long,float,complex)

    Python支持四种不同的数值类型,包括int(整数)long(长整数)float(浮点实际值)complex (复数),本文章向码农介绍python 四种数值类型,需要的朋友可以参考一下. 数字数据 ...

  4. python的序列类型及其特点_Fluent Python 笔记——序列类型及其丰富的操作

    序列的分类 Python 标准库用 C 语言实现了丰富的序列类型的数据结构,如: 容器序列(能存放不同类型的数据):list.tuple.collections.deque 等 扁平序列(只容纳同一类 ...

  5. python定义变量类型_一、python基础之数据类型与变量

    一.变量 声明变量 #!/usr/bin/env python age=9 name='ld' name1='ld1' 变量作用:保存状态(程序的运行本质是一系列状态的变化,变量的目的就是用来保存状态 ...

  6. python中byte类型_详解python string类型 bytes类型 bytearray类型

    搜索热词 一.python3对文本和二进制数据做了区分.文本是Unicode编码,str类型,用于显示.二进制类型是bytes类型,用于存储和传输.bytes是byte的序列,而str是unicode ...

  7. python的序列类型包括哪三类,Python常用的序列类型包括列表、元组和字典三种。...

    表示M型,常用统中库管理系数据. 边际位人的人消费每增增加加1均收均消倾向个单出数入所费支是指,列类边际消费民的年农倾向村居是(. 的家品消庭食9年则2居民城镇出为费支,型包庭以3口镇家若城人计算. ...

  8. len函数python返回值类型_简单介绍Python中的len()函数的使用

    01状态机介绍 游戏中的状态机一般都是有限状态机,简写为FSM(有限状态机),简称状态机,是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型. 状态机的每一个状态至少需要有以下三个操作: ...

  9. python定义变量类型为数字_python 学习(四)- 变量类型

    一.变量的定义和使用 为什么需要变量?当然是通过变量来存储数据,而存储的数据类型可能是数字.字符串.字符等等,将这些数据存储在变量中,可以方便我们去使用,除了变量之外还有一个常量,区别就是,常量是不可 ...

  10. python开发效率高吗_提升python开发者工作效率的六个库,你知道几个?

    无论你现在是否从事Python开发,以后想从事Python,你最好了解一下几个库,它能让你无论是学习,还是职业进阶都有很大帮助. Python 凭借其易用的特点,已经被工业界和学术界广泛采用.另一方面 ...

最新文章

  1. SpringCloud 2020版本教程1:使用nacos作为注册中心和配置中心
  2. Spring学习手册番外:context:annotation-config/ 和 mvc:annotation-driven / 的区别
  3. jenkins配置从节点
  4. 快速配置MPLS ×××
  5. vue动态设置文字布局方式_详解Vue动态添加模板的几种方法
  6. 51 单片机 跑马灯2
  7. 【绝对有用】Server Tomcat v9.0 Server at localhost failed to start
  8. 用c语言复制字符串的元音字母,急求:编写程序,将一个字符串中的元音字母复制到另一个字符串,然后输出。...
  9. 怎么检查计算机网络是连接,怎么检测网络打印机是否与电脑连接成功【检测方法】...
  10. Java-实现简单取色器
  11. 后缀mcp用什么软件打开_如何打开MCP文件?
  12. 高层建筑电气设计说明书
  13. excel文件工作表保护没有密码进行撤销
  14. 页眉---header
  15. 什么是软件测试吞吐量,在软件测试中吞吐量与TPS有什么区别与联系
  16. Ajax关于readyState和status
  17. 【SVN】Win 10:SVN 下载、安装和汉化
  18. 这姐姐呀的人工智能实训1:机器人语料库数据集准备
  19. 经典面试题助你成功就业
  20. 创业板公司相符如何经济转型

热门文章

  1. 0xc000007b——应用程序无法正常启动解决办法
  2. 最短路径之迪杰斯特拉算法
  3. English——限定性定语从句与非限定性定语从句(二)
  4. 安又琪 -《Angela安又琪》
  5. 查找文件夹下图片的数量
  6. 相关不是因果,哪又是啥?
  7. Scala类型系统(sudden thought)
  8. 32位系统和x86的关系?
  9. Alluxio部署(local模式)
  10. [译]Profile and debug your ASP.NET MVC app with Glimpse