python - 在 conda 环境中使用 pdb 进行调试

标签 python anaconda pdb

我正在 Conda 环境中使用 Python 进行开发。我添加到环境中的所有包在运行环境下创建的“python”二进制文件时都可以成功导入。但是,当尝试使用 pdb 调试我的任何 python 脚本时,对于相同的包,我会得到 ImportError。

比如新建环境,添加如下包

pip install keras
pip install conection

我运行以下 test.py 脚本

import keras
import connexion

print("I have imported keras alright")
print("I have imported connexion alright")

from keras.models import Sequential
from keras.layers import Dense, Activation

# for a single-input model with 2 classes (binary):

model = Sequential()
model.add(Dense(1, input_dim=784, activation='softmax'))

print("I have defined a keras network alright")

当以通常的方式调用它时,它工作正常,

python test.py  # Works OK

但在 pdb 中以 Debug模式运行时失败

pdb test.py # ImportError: No module named connexion

问题是:如何正确配置 pdb 以使用安装在 conda 环境中的包?

附加信息:虽然 python 二进制文件确实在 conda 环境中

which python # returns $HOME/miniconda3/envs/$USER/bin/python

pdb好像总是指系统版本

which pdb # returns /usr/bin/pdb

最佳答案

或者,使用 python3 -m pdb <script>在 conda 和 python 3 中使用 pdb

关于python - 在 conda 环境中使用 pdb 进行调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38346577/

相关文章:

python - 为什么pop()的大O和python中的pop(0)不一样

python - Anaconda vs miniconda 空间

python - opencv从哪里来的spyder

python - 使用 FIFO 在没有标准输入/标准输出的情况下运行 pdb

c++ - 编译器会为相同的源生成不同的 .pdb 文件吗

python - 在python中获取pdb风格的调用者信息

python - 你如何在 Python 中建模随时间变化的东西?

python - 在python中的不规则网格上集成二维数据

python - 如何使用 Python 和 Selenium Webdriver 使用 mat-options 查找下拉列表的长度?

python - Jupyter Lab 中针对包 pycwt 的 ModuleNotFoundError