在使用 Python 脚本编写一些经验之后,Python 类型仍然令人惊讶! 在以下循环中:
import random
very_large_number = 10000000
for i in xrange(very_large_number):
variable = random.random()
print id(variable)
看起来我正在创建 10000000 个变量! 有没有办法只在内存中保留一个变量并仅更改其值?
最佳答案
每次创建新变量(例如variable = random.random()
)时,它都会被分配到内存中的新位置。因为您通过循环重新分配此变量,所以旧变量超出范围并最终被垃圾收集掉。您只是打印每个新分配的内存位置。这并不意味着打印的每个内存位置仍然处于事件状态。
关于python - 在Python for循环中改变 float 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35002635/