60D1 – Python 特性与基本语法

Python 语言的特性

Python 是一门动态的、强类型语言。

什么是动态语言?

动态编程语言是高级程序设计语言的一个类别,在计算机科学领域已被广泛应用。它是一类在运行时可以改变其结构的语言:例如新的函数、对象、甚至代码可以被引进,已有的函数可以被删除或是其他结构上的变化。

引用自 知乎 动态语言 话题介绍 Topic 19616169

要了解动态语言,首先需要了解“类型检查”。

类型检查是验证类型约束的过程,编译器或解释器通常在编译阶段或运行阶段做类型检查。
类型检查就是查看“变量”和它们的“类型”,然后判断表达式是否合理。
例如,你不能拿一个 String 类型变量,去除浮点数变量。

如果类型检查发生在程序的运行阶段(Run Time),那么它便是“动态类型语言”(Dynamically Typed Languages)。这类型语言常见的包括:

  • Python
  • JavaScript
  • PHP
  • Lua

如果类型检查发生在程序的编译阶段(Compile Time),那么它便是“静态类型语言”(Statically Typed Languages)。这类型语言常见的的包括:

  • C
  • C++
  • Java
  • C#
  • Scala

因此,我们可以说:
动态语言指代码运行时才被编译器一行一行翻译执行。

什么是强类型语言?

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

例如,在交互式工具 IPython 中输入下列代码:

In [1]: a = 5
In [2]: a = a + 's'

程序会抛出 TypeError 异常:

unsupported operand type(s) for +: 'int' and 'str'

这个异常的意思是不支持 int 变量 和 str 变量相加。

常见的强类型语言有:

  • Python
  • Java
  • C#
  • Scala

与之对应的为弱类型语言。弱类型语言容易与其他类型混合计算。
弱类型语言代表 JavaScript 支持如下操作:

var data = 5
data = data + 'saga' // string 和 int 结合,自动转化为 string

常见的弱类型语言有:

  • C
  • C++
  • PHP
  • JavaScript
页面: 1 2 3 4

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注