Python PyDev导入时间比使用命令行慢10倍
我是python新手,在Eclipse中使用PyDev时,每当我尝试执行正在处理的代码时,我都会注意到启动时间极其缓慢。我把范围缩小到库导入 例如,如果我运行以下代码Python PyDev导入时间比使用命令行慢10倍,python,eclipse,pydev,Python,Eclipse,Pydev,我是python新手,在Eclipse中使用PyDev时,每当我尝试执行正在处理的代码时,我都会注意到启动时间极其缓慢。我把范围缩小到库导入 例如,如果我运行以下代码 import timeit startTime = timeit.default_timer() import numpy as np print("loaded numpy: ", timeit.default_timer() - startTime) import pandas as pd print("loaded pa
import timeit
startTime = timeit.default_timer()
import numpy as np
print("loaded numpy: ", timeit.default_timer() - startTime)
import pandas as pd
print("loaded pandas: ", timeit.default_timer() - startTime)
from pandas import ExcelWriter
print("loaded sub-pandas 1: ", timeit.default_timer() - startTime)
from pandas import DataFrame
print("loaded sub-pandas 2: ", timeit.default_timer() - startTime)
import timeit
print("loaded timeit: ", timeit.default_timer() - startTime)
from sqlalchemy.sql.expression import false
print("loaded sqlalchemy: ", timeit.default_timer() - startTime)
import os
print("loaded os: ", timeit.default_timer() - startTime)
PyDev的基准时间为:
loaded numpy: 6.791420515378803
loaded pandas: 13.315319435084618
loaded sub-pandas 1: 13.31538835744522
loaded sub-pandas 2: 13.315418989605488
loaded timeit: 13.315443057731413
loaded sqlalchemy: 13.668371856921556
loaded os: 13.668398113058927
在执行命令行时,它将是:
loaded numpy: 1.6967744335238362
loaded pandas: 3.7941380255968165
loaded sub-pandas 1: 3.7944563812624534
loaded sub-pandas 2: 3.795081787867914
loaded timeit: 3.795144146194173
loaded sqlalchemy: 3.915562085554165
loaded os: 3.915884087905548
有人能帮我弄清这件事吗?即使使用命令行选项4s来加载两个标准库,似乎也有点过头了
谢谢大家! 经过两天的洗头,这个问题不知何故与项目所在地有关。如果项目
py
文件位于本地,则运行速度会很快,如果它们位于办公室网络,则运行速度会显著降低
请注意,anaconda 3.6安装在本地。还要注意的是,我们的网络延迟并没有那么糟糕。所以我不太清楚为什么会发生这种行为
因此,将项目移动到C驱动器可以将事情加速到可接受的加载时间
以下是位于本地的新项目的输出:
loaded numpy: 0.14122337554736752
loaded pandas: 0.5681306651263066
loaded sub-pandas 1: 0.568159473943701
loaded sub-pandas 2: 0.5681747900238348
loaded timeit: 0.5681882827610955
loaded sqlalchemy: 0.6529934184615654
loaded os: 0.6530225919475344
我要说的是,在网络上使用任何东西都会大大降低速度,而且速度降低一个数量级似乎很正常(python会反复加载东西——根据操作系统的不同,它可能会缓存一些东西,但与使用本地设备相比,它仍然会非常慢……——理想情况下,使用本地SSD;)让我感到困惑的是,如果Anaconda和PyDev安装在本地计算机上,为什么这会很重要。除了最初在网络上打开项目文件之外,您不会期望任何网络流量吗?不是真的。。。对于任何导入执行,python可能会遍历PYTHONPATH中的所有可用目录,因此,如果其中一个目录是远程的,那么它在任何导入时都会触动网络。这正是为什么它令人困惑的原因——网络上没有安装库