【问题标题】:python import takes very long when run in debugger在调试器中运行时,python 导入需要很长时间
【发布时间】:2020-02-08 21:28:26
【问题描述】:

我正在使用 https://github.com/DuyguA/DEMorphy 。 我使用 python3.7 解释器运行以下代码。

import time

start = time.time()
from demorphy import Analyzer
end = time.time()
print(end-start)

输出是

0.46335792541503906

当使用 Pycharm 调试器运行时,输出为

/home/user/virtualenvs/demorphy_test/bin/python3 /home/user/programs/pycharm-community-2019.2.1/helpers/pydev/pydevd.py --multiproc --qt-support=auto --client 127.0.0.1 --port 57954 --file /home/user/demorphy_test/test.py
713.0500545501709

使用 Visual Studio 代码调试器运行时,输出为

/home/user/virtualenvs/ptdev/bin/python /home/user/.vscode/extensions/ms-python.python-2019.10.41019/pythonFiles/ptvsd_launcher.py --default --client --host localhost --port 42604 /home/user/demorphy_test/test.py 
693.3676333427429
Terminated

当使用 Eclipse Pydev Debugger 运行时,输出为

pydev debugger: starting (pid: 26462)
706.7083044052124

为什么使用调试器运行导入语句需要这么长时间? 我怎样才能让它运行得更快?

需要安装demorphy依赖https://github.com/pytries/DAWG/issues/31的dawg库。

【问题讨论】:

    标签: python visual-studio-code pycharm python-import


    【解决方案1】:

    由于 Python 调试器的工作方式和导入的工作方式,它很慢。在 Python 中导入实际上是在执行模块中的代码。在调试器下执行代码本质上是较慢的,因为执行的每一步都必须通过调试器来查看是否例如一个断点被命中。

    让这个速度更快的唯一方法是让调试器更快(VS Code 的 Python 扩展正在考虑对调试器的速度进行一些改进,但没有时间表说明这些何时会落地,最初它们只会对于 Python 3.7)。

    【讨论】:

      猜你喜欢
      • 2020-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多