优草派  >   Python

如何管理Python内存?python管理内存的方法有哪些?

翟嘉慧            来源:优草派

对于新手刚学习python的时候,经常不知道如何对Python中的内存进行管理,今天这篇文章是有关“如何管理Python内存?python管理内存的方法有哪些?”的,文章内容清晰易懂,希望你阅读完这篇文章之后有所收获,下面一起来了解一下吧!

如何管理Python内存?python管理内存的方法有哪些?

Python管理内存是计算机很早就存在的一种机制了,对于编程语言来说,内存就是用来分配和释放空间的一种模式。Python和c+管理内存的方式有所不同。

1、手动管理内存

 手动管理适用于在C 语言中,这种语言还特地提供了两个函数用于释放内存空间及分配,分别是函数 malloc 和 free。举个例子:

#include <stdlib.h>
void *malloc(size_t size);
void free(void *p);

malloc 函数表示的是分配指定大小 size 的内存,然后再返回内存的首地址,free是请求释放之前申请的内存。

2、自动管理内存模式

手动管理模式实用于早期的计算机中,大部分的编程语言都提供了手动管理内存机制的模式,因为它的特点是能够方便有效的规划利用内存,有优点就会有缺点,其缺点太繁琐,容易出错。随着硬件的提高,手动管理内存的模式已经淘汰,现在的编程语言像python、java等都提供了自动管理内存模式。自动管理内存模式在使用的时候不会再显示释放的内存,主要由编程语言的解释器负责释放。

看个例子:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age
while True:
person = Person('菲菲', 20)

上面这个例子表示的是在python程序中,在无限循环的过程中释放内存。此时定义了一个类Person包含了两个属性name、age,在利用while循环使用类生成一个实例person, 需要申请一块内存用于保存实例 person 的属性。Python解释器在运行这个程序的时候,会自动释放person所占的内存,即使程序一直运行下去,也不会把内存耗尽。

以上就是关于“如何管理Python内存?python管理内存的方法有哪些?”的全部内容。

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。
TOP 10
  • 周排行
  • 月排行