当内存分配给python中的变量时?

时间:2019-04-06 05:54:57

标签: python python-3.x variables memory-management

与Java一样

int requires 4 bytes
float requires 4 bytes
char requires 2 bytes

但是在python中,我们不声明变量类型,所以

  问:何时将内存分配给变量?

如以下示例所示,将不同类型的数据分配给同一变量

var = 10
print var
print type(var) #<type 'int'>

var = 10.5
print var
print type(var) #<type 'float'>

var = "python"
print var
print type(var) #<type 'str'>

1 个答案:

答案 0 :(得分:2)

变量的内存是在创建变量时分配的,例如输入函数时,如果是局部变量。

对象的内存是在创建对象时分配的,无论是否将其分配给变量。

用Java术语,您可以将所有Python变量视为对Object的引用。这意味着每个变量仅需要一个固定的指针大小的内存来“保存”(参考)其内容。这就是Python变量在其整个生命周期内都可以轻松引用不同类型的数据的原因。