0

我很清楚 Python 是动态类型的,动态类型与静态类型独立于强类型与弱类型。(只是为了消除可能的混乱。)

维基百科给出了一个字符串和一个整数的相加作为例子:你不能在强类型语言中做到这一点。但是在 Python 中你可以这样做: "string"*3 这显然也不是鸭子类型。这只是一般规则的一个例外,还是 Python 不是真正的强类型?还是我对弱与强的定义不够了解?请赐教。

编辑:当我被提示给出我对强类型意味着什么的定义时,我理解它被定义为不能在操作中混合数据类型。让我感到困惑的是,维基百科给出了不可能添加字符串和 int 的例子,为什么 python 是强类型的,它们的乘法是可能的,这在我的解释中构成了一个为什么它是弱类型的例子。我只提到了鸭子类型,因为它似乎创建了一个例外,因为您可以混合数据类型,只要它们看起来和行为相同。(哪些字符串和整数显然不行。)

edit2:我也认为这不是重复的,因为另一个问题实际上是关于静态/动态类型的。

4

0 回答 0