首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找不到模块-我无法在外部运行使用PyCharm开发的.py文件

找不到模块-我无法在外部运行使用PyCharm开发的.py文件
EN

Stack Overflow用户
提问于 2019-06-16 11:11:27
回答 3查看 1.7K关注 0票数 1

我正在使用PyCharm开发一个python项目,该项目使用一个名为win10toast的外部库。我已经使用PyCharm安装了win10toast。但是,当我尝试使用cmd运行.py文件(即在外部运行python文件)时,出现了一个错误:

代码语言:javascript
复制
ModuleNotFoundError: No module named 'win10toast'.

我用的是python 3.6.4。我使用PyCharm安装了win10toast。

代码语言:javascript
复制
from win10toast import ToastNotifier

我希望程序运行时没有任何错误,但目前我得到的是ModuleNotFound错误。

EN

回答 3

Stack Overflow用户

发布于 2019-06-16 11:58:32

Python可能很难正确运行,因为它对依赖项(如外部库和包)的安装位置很敏感。如果您将Python安装到一个目录,但意外地将外部库安装到另一个目录,则当您运行.py程序时,它将无法从外部库调用,因为它不存在于运行Python的同一个库中。

查找计算机上安装Python的位置,然后找到安装外部库的位置。找到安装外部库的位置后,将其整个包内容移动到安装Python的同一目录中。或者更好的方法是,使用pip将外部库重新安装到与Python相同的目录中。

如果您使用的是Mac,则Python及其相关依赖项通常存储在/User/bin中的某个位置。如果您使用的是Windows,它将存储在C://目录中的某个位置(可能是C:\Users\username\Local\AppData中的某个位置)。如果您使用的是Linux,那么它将存储在/usr/bin中的某个位置。无论你做什么,不要把Python从任何地方移走,因为有时候这会使你的系统在某些操作系统上变得混乱,比如Mac,它有自己的Python版本(Python2.7,我相信它已经过时了)。

最后,您的计算机上可能有两个不同版本的Python,这是很常见的;Python2.7和Python 3+。如果您在一个版本中编写程序,但在另一个版本中运行它,则外部库只能从安装它的任何Python版本中调用。尝试使用python3代替python运行.py程序(反之亦然),看看会发生什么。如果它在一个python版本上运行,就会告诉您外部库安装在另一个版本的目录中。

这应该可以解决你的问题。

票数 2
EN

Stack Overflow用户

发布于 2019-06-16 12:30:42

我建议您不要使用PyCharm安装软件包,至少在结果与在命令行执行"pip install“稍有不同的情况下不要这样做。我认为没有理由让PyCharm参与配置Python安装。这是在自找麻烦。

我承认我不熟悉我建议你避免的做法。我从PyCharm问世的那一周起就一直在使用它(在此之前,我是Python插件的狂热用户),除了在命令行安装IntelliJ模块之外,我从来没有考虑过做任何事情。这样,我就可以确定这些模块的位置( base Python install或venv)。此外,我知道我正在尽我所能最小化在PyCharm中运行代码和在命令行中运行代码之间的差异。我提出我的建议完全基于这个实践,对我来说从来没有出过错。

我安装了多个基本的Python版本,并在这些版本之上定义了几十个venv。PyCharm很擅长让我指出我想要应用到任何项目或运行/调试配置中的哪一个,并无缝地利用它们。但同样,我只在命令行中管理这些环境。

我仍然遇到在命令行和PyCharm之间切换的问题,因为一个模块引用了单个源代码树中的其他模块。我的公司已经提出了一个简单的解决方案来解决这个问题,确保我们所有的Python脚本在离开PyCharm时仍然可以运行,以及它在项目中维护Python路径的逻辑。我之前已经在S.O.上解释过这个机制,如果有人对此感兴趣,我会很高兴地发现。

票数 1
EN

Stack Overflow用户

发布于 2019-06-16 13:00:46

win10toast库安装在目录:YOUR_PYCHARM_WORKSPACE\PycharmProjects\YOUR_PROJECT_NAME\venv\Lib\site-packages中,但是当您使用cmd运行您的程序时,pycharm解释器使用您在那里安装python的站点包目录。对于Ex:C:\Python27\Lib\site-packages So,您可以使用pipwin10toast库安装到此windows目录中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56615790

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档