繁体   English   中英

调试首先需要读取大文件的python脚本。 我是否必须每次都重新加载它们?

[英]Debugging a python script which first needs to read large files. Do I have to load them every time anew?

我有一个python脚本,该脚本首先读取一些大文件,然后执行其他操作。 由于我想多次运行此脚本并更改一些代码,直到对结果满意为止,如果脚本不必每次都重新读取文件,因为它们不会更改,那就很好了。 所以我主要想用它来调试。

通常,我运行的脚本中包含错误,但几分钟后我才看到错误消息,因为阅读时间过长。

有什么技巧可以做这样的事情吗?

(如果可行,我将创建较小的测试文件)

我不太擅长Python,但它似乎能够从已更改的模块动态重新加载代码: 如何在Python Interpreter中重新导入更新的包?

其他一些与Python不直接相关的建议。

首先,尝试创建一个较小的测试文件。 是否需要整个文件来证明您正在观察的错误? 很可能只是您输入文件中的一小部分是相关的。

其次,是否需要这些特定文件,否则在大量数据上都会出现问题? 如果仅在特定文件上显示,则很可能再次与这些文件的某些功能有关,并且还会在具有相同功能的较小文件上显示。 如果主要原因是大量数据,则可以通过直接在脚本中生成一些随机数据来避免读取数据。

第三,您阅读文件的瓶颈是什么? 这仅仅是硬盘性能问题,还是在实际遇到问题之前先对脚本中的读取数据进行大量处理? 在后一种情况下,您可能可以执行一次处理并将结果写入新文件,然后修改脚本以加载此处理的数据,而不是每次都重新进行处理。

如果硬盘性能成为问题,请考虑使用更快的文件系统。 例如,在Linux上,您可以使用/dev/shm

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM