- 使用的电脑系统:Windows 10 64位
- 使用的开发集成环境:PyCharm 2016.1.4
- 使用的Python的版本:python 2.7.10 和 python 3.5.0
学习Python的内存释放知识点的动机
之前我学过很多Python的程序,偶然的一次,我打开任务管理器,看到我写的程序,运行时占用了大量的内存,所以,我希望学会如何释放内存,来优化我的程序,也不给电脑照成太大的负担,所以,我想学会:Python的内存释放这个知识点。
参考网站: gc模块–Python内存释放
下面写几个实验程序,里面都是使用range()
函数来分配内存空间的。range()
函数的详细介绍,请见这篇博客:range()函数在python2 和 python3中的使用介绍。
Python2 内存释放
未优化前的代码:
1 2 3 |
|
优化内存的代码:
使用手动释放内存的方法来优化内存。
1 2 3 4 5 6 |
|
可以看出,占用的内存空间明显减小了。
既优化了内存,也优化了CPU 的代码
使用睡眠来优化CPU运行。
1 2 3 4 5 6 7 8 9 |
|
Python3 内存释放
未优化前的代码:
1 2 3 |
|
使用Python3库运行未优化的代码,所需要的消耗的内存空间和使用Python2运行优化内存的代码消耗的内存空间 差不多。
优化内存的代码:
1 2 3 4 5 6 |
|
可以看出,所暂用的内存空间没有任何增减。
既优化了内存,也优化了CPU 的代码:
1 2 3 4 5 6 7 8 9 |
|
总结
Python3 真的是比 Python2 更加的完善了,从这一点上也可以看出来,Python语言是第4代语言里面非常杰出的语言。随着它的不断发展,它会运行速度慢和内存消耗大的缺点会慢慢的消失(因为:许多Python内置库是用C语言写的)。我看好Python。