为什么我应该在python中引用“名称”和“绑定”,而不是“变量”和“赋值”?
我知道这个问题有点笼统,但我很想知道:)
最佳答案
在C和C++中,变量是一个名为内存的位置。变量的值是存储在该位置的值。分配给变量,然后修改该值。所以变量是内存位置,而不是它的名称。
在Python中,变量是用于引用对象的名称。变量的值就是那个对象。到目前为止,听起来是一样的。但是赋值给变量,而不修改对象本身,而是修改变量引用的对象。所以变量是名称,而不是对象。
因此,如果您正在抽象地考虑Python的属性,或者如果您同时讨论多种语言,那么为这两种不同的事物使用不同的名称是很有用的。为了保持简洁,您可能避免在Python中谈论变量,并将赋值操作符的作用称为“绑定”,而不是“赋值”。
注意,The Python grammar将“assignments”作为一种语句,而不是“bindings”。至少部分python文档calls names variables。因此,仅在Python上下文中,这样做是不正确的。术语的不同定义适用于不同的上下文。
关于python - 为什么我应该在Python中引用“名称”和“绑定(bind)”而不是“变量”和“赋值”?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20699736/