相关疑难解决方法(0)

为什么允许向已经实例化的对象添加属性?

我正在学习python,虽然我认为我得到了Python的整个概念和概念,但今天我偶然发现了一段我并不完全理解的代码:

假设我有一个应该定义Circles但缺少一个body的类:

class Circle():
    pass
Run Code Online (Sandbox Code Playgroud)

由于我没有定义任何属性,我该怎么做:

my_circle = Circle()
my_circle.radius = 12
Run Code Online (Sandbox Code Playgroud)

奇怪的是Python接受上述语句.我不明白为什么Python没有引发undefined name error.我明白通过动态类型我只需要随时将变量绑定到对象,但是类中是否不radius存在Circle允许我这样做的属性?

编辑:你的答案中有很多精彩的信息!谢谢大家的所有精彩答案!遗憾的是我只能将一个标记为答案.

python attributes declaration python-3.x

55
推荐指数
5
解决办法
3万
查看次数

标签 统计

attributes ×1

declaration ×1

python ×1

python-3.x ×1