Skip to main content
 首页 » 编程设计

python 强/弱动态/静态类型语言

2025年05月04日17飞鱼

<分区>

我了解到 Python 是一种强动态类型的语言。
动态:变量的类型在执行时确定,而不是在编译时确定。对于这部分,我可以理解类型是在将值(当然是类型)分配给变量时确定的。

strong:您不能更改变量的类型。 但这不是真实情况:

>>> a = 1 
>>> type(a) 
<type 'int'> 
>>> a = 's' 
>>> type(a) 
<type 'str'>  

从上面的代码中,我可以将变量 a 的类型从 int 更改为 str。
这怎么会发生?我能说 Python 是弱类型语言吗?


编辑:

如果您能给我一个代码片段,说明强动态类型如何影响 Python 编程,我将不胜感激! 在我平时的编码过程中,我从不关心strong-dynamic typing 问题。它也很少影响我的代码功能。奇怪!


编辑:
答案的结论:

  1. 只有对象/值有类型属性。变量没有类型。
  2. (Strong) 类型决定了可以执行什么操作 在对象/值(可能是引用它们的变量)之上/之间。
  3. (动态)类型意味着变量只是一个标签(引用 对象/值)。此标签可以引用任何类型的任何对象/值。