怎么压缩用python写的游戏的文件大小?或者用什么开发库?

Python021

怎么压缩用python写的游戏的文件大小?或者用什么开发库?,第1张

你可以尝试以下方法:

建立虚拟环境,减少Python打包额外的第三方库

使用upx和pyinstaller进行压缩

使用upx和nuitka进行压缩

这几种方法网上可以找到很多教程,都能够在一定程度上减小打包出来的文件大小,但是因为Python的解释型语言,除了使用nuitka编译成exe以外,其它的压缩方法作用一般不大,但是使用nuitka编译后的文件也会有较大的体积。

python读取文件大小的代码如下:

[python] view plaincopyimport os

from os.path import join, getsize

def getdirsize(dir):

size = 0L

for root, dirs, files in os.walk(dir):

size += sum([getsize(join(root, name)) for name in files])

return size

if '__name__' == '__main__':

filesize = getdirsize(r'c:\windows')

print 'There are %.3f' % (size/1024/1024), 'Mbytes in c:\\windows'

在说os.walk前,我们先在ipython3中help一下,打印如下

os.walk返回一个生成器,每次遍历返回的对象是一个元组,元组中包含三个元素:

dirpath:当前遍历的文件夹的路径,类型为字符串;

dirname:当前遍历的文件夹下的子文件夹的名字,类型为列表;

filenames:当前遍历的文件夹下的文件的名字,类型为列表;

创建一个包含子文件夹和文件的walk文件夹,通过终端tree看一下目录结构:

我们通过for循环遍历os.walk()的返回结果

运行结果如下:

使用os.walk()获取文件夹下的文件大小: