1、使用sys模塊的getsizeof()方法可查看具體占用內存空間的大小,從下面的例子可看出10w條數據就已經占用了800kb的內存了
import sys L = [x for x in range(10000)] print(sys.getsizeof(L)) // 824464
2、使用psutil模塊,可清晰的查看應用占用的內存資源
import psutil mem = psutil.virtual_memory() # 系統總計內存(單位字節) zj = float(mem.total) # 系統已經使用內存(單位字節) ysy = float(mem.used) # 系統空閑內存(單位字節) kx = float(mem.free)
3、如何在python中管理內存的?
python中的內存管理由Python私有堆空間管理,程序員無權訪問此私有堆。其由python解釋器自己處理,Python對象的堆空間分配由Python的內存管理器完成。
Python還有一個內置的垃圾收集器,它可以回收所有未使用的內存,並使其可用於堆空間。
4、退出Python程序時,為什么不清除所有python分配的內存?
1、那些對其他對象具有循環引用的Python模塊或者從全局名稱空間引用的對象並沒有被解除分配或釋放
2、無法解除分配C庫保留的那些內存部分
5、python是如何運行內存管理的?
python是使用: 1、引用計數機制 2、垃圾回收機制 3、內存池機制 三種機制來管理內存的
微信掃碼關注公眾號,有意想不到的驚喜哦!!!