以kb为单位的pygame图像大小(不是以像素为单位)

时间:2013-10-12 21:49:03

标签: python image pygame sizeof

如何从内存中的 pygame.image 大小(以kb /字节为单位)获取?不幸的是,没有直接的方法来检查 surface 的大小。

对于测试,我有2个文件(39kb和1.9mb)

aa = pygame.image.load(filename).convert_alpha()
bb = pygame.image.load(filename2).convert_alpha()
print sys.getsizeof(aa)
print sys.getsizeof(bb)

结果:

64
64

这可能是(可能)可变大小,而不是存储的图像。 我想出的唯一一件事是tostring:

print "Size %d" % sys.getsizeof(pygame.image.tostring(aa, "RGBA")) 
print "Size %d" % sys.getsizeof(pygame.image.tostring(bb, "RGBA")) 

得到了:

Size 637 
Size 39923749

38mb?奇怪而且不准确。如何检查实际内存使用情况?

BR Parasit

1 个答案:

答案 0 :(得分:0)

使用os:

import os
print os.stat('image.jpg').st_size

这将以字节

打印图像的大小

如果你试图获取iit的内存而不是文件大小,请尝试:

aa = pygame.image.load(filename).convert_alpha()
print aa.nbytes