Python 笔记(01)— 动态、强类型语言

1. 什么是动态语言?

在了解动态语言之前,我们首先了解下 “类型检查”。

类型检查是验证类型约束的过程,编译器或解释器通常在 编译阶段运行阶段 做类型检查。

类型检查就是查看 “变量” 和它们的 “类型”,然后判断表达式是否合理。例如,不能拿一个 string 类型变量除以浮点数变量。

  • 类型检查发生在程序 运行阶段run time ),那么它便是“动态类型语言”(dynamically typed languages)。常见的动态语言包括:PythonJavaScrpitPHP

  • 类型检查发生在 编译阶段compile time)的是“静态类型语言”(statically typed languages)。常见的静态类型语言包括:CC++JavaC#Scala

2. 什么是强类型语言?

强类型语言是指:不管是在编译阶段还是运行阶段,一旦某种类型绑定到变量后,此变量便会持有此类型,并且不能同其他类型在计算表达式时,混合使用。

例如:

>>> a = 1
>>> a + "a"
Traceback (most recent call last):File "", line 1, in <module>
TypeError: unsupported operand type(s) for +: 'int' and 'str'

意思是不支持 int 变量和 str 变量相加。

  • 常见的强类型语言有:PythonJavaC#Scala

弱类型语言可以与其他类型混合计算。弱类型语言代表 JavaScript,支持如下操作:

var a = 10
a = a + "hello, world"
"10hello, world"
  • 常见的弱类型语言有:CC++PHPJavascript


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部