python-2.7 - MySQLdb 导入从命令行工作,但在 PyCharm 中崩溃
问题描述
我正在使用安装了 MySQLdb 包的 Python 2.7 virtualenv。如果我从命令行运行 Python并执行import MySQLdb
,则可以正常工作。但是,如果我从PyCharm 终端运行它,则会出现错误:
ImportError: libmysqlclient.so.20: cannot open shared object file: No such file or directory
如果我执行test.py
包含该行的文件,则会出现相同的模式import MySQLdb
。它在从命令行执行时工作,从 PyCharm 执行时崩溃。
我用谷歌搜索了这个错误,似乎卸载并重新安装 MySQLdb 可以解决它。但我想了解为什么该错误只发生在 PyCharm 中。我确保命令行和 PyCharm 终端都使用
- 相同的虚拟环境(通过检查
sys.executable
) - 相同的工作目录(通过检查
os.getcwd()
) - 相同的路径(通过检查
sys.path
)
我还检查了PYTHONPATH
未定义的。还能有什么不同?
解决方案
您必须将 pycharm 指向您的 virtualenv。转到设置 -> 项目解释器并为 pycharm 提供 python 可执行文件的路径。一旦在那里它应该工作。请注意,如果您有混合 WSL/windows 设置,则需要一个用于 WSL 的 virtualenv 和一个用于 windows/pycharm 的单独 virtualenv。
推荐阅读
- postgresql - 按计算结果排序(带输入)
- javascript - knex - 链接语句
- python - class_mode 中的二进制、稀疏和分类有什么区别
- android - Flutter 中的 JSON 解析和 Map
- asp.net-core - 如何在 IIS 中设置 pass-through 身份验证帐户?
- python-3.x - Discord.py:无法弄清楚如何使用 aiohttp 代替此用例的请求
- python - 如何在 for 循环中更新标签小部件中的文本?
- python-3.x - 如何在一个数据框中拆分多个日期
- c++ - 如何使用 C++ 在 Linux 终端上打印某个 ASCII 字符?
- c++ - C++ 根据父级指针删除子级