运行我的Python脚本需要“永恒”

时间:2013-08-28 18:13:36

标签: python

我有一个Python脚本,可以从任何目标文件加载二进制数据并存储在内部 本身,在列表中。问题是存储文件越大,下次打开文件所需的时间越长。假设我想加载700 MB的电影并将其存储在我的脚本文件中。然后想象我第二天用该脚本中存储的700 MB数据打开它。打开它需要永恒!

以下是脚本文件外观的简化布局。

  

第1行:“700 MB电影存储在列表中。”

     

以下所有内容:“最终用户使用的所有功能。”

在解释器到达用户等待调用的函数之前, 它必须首先解释第1行的700 MB数据!这是个问题 因为谁想等一个小时才打开剧本?

那么,如果我像这样更改文件的布局会有帮助吗?

  

第一行:“最终用户使用的所有功能。”下图:“700   MB电影存储在列表中。“

这会有帮助吗?或者,在调用函数之前,解释器是否必须遍历所有700 MB?

1 个答案:

答案 0 :(得分:1)

Python编译器的工作方式使你想要做的事情至少很难说。

首先,每次更改脚本(例如通过添加文件),它将在执行之前触发一个新的编译循环(在.pyc文件中转换.py文件)。

其次,每次导入模块时,都会将大量数据块加载到内存中(无论是导入还是首次访问数据时)。

这不仅缓慢,而且也不安全且容易出错。

我猜你打算做的是,分发一个包含数据的单个文件。

你可以用这个小技巧做到这一点:

制作executable python package(基本上是一个zip文件)。 使用zipfile模块可以非常轻松地构建zip文件。