Python 无法导入praw

Python 无法导入praw,python,Python,当我尝试使用 导入praw 我得到以下错误: ModuleNotFoundError: No module named 'praw' 我确保预先在命令提示符下使用pip install praw安装praw,所以我不确定它为什么不起作用。我是编程新手,因此如果您有任何见解,我将不胜感激。您很可能会遇到系统中多个python安装的问题。我建议清理您的环境,并使用虚拟环境 您应该运行以下操作以在工作目录中构建干净的虚拟环境: python-mvenv 这将创建一个虚拟环境,应该没有系统范围的软

当我尝试使用

导入praw
我得到以下错误:

ModuleNotFoundError: No module named 'praw'

我确保预先在命令提示符下使用
pip install praw
安装praw,所以我不确定它为什么不起作用。我是编程新手,因此如果您有任何见解,我将不胜感激。

您很可能会遇到系统中多个python安装的问题。我建议清理您的环境,并使用虚拟环境

您应该运行以下操作以在工作目录中构建干净的虚拟环境:

python-mvenv
这将创建一个虚拟环境,应该没有系统范围的软件包,这是一个漂亮而干净的python安装

现在您需要激活它。你说你在Windows上,那就快跑吧
venv\Scripts\activate.bat(如果您使用CMD),或者
venv\Scripts\activate.ps1(如果您使用PowerShell)

现在,请尝试使用
python-m pip install praw
重新安装
praw
。如果您在这个虚拟环境中,您现在应该始终能够访问
praw


如果您对阅读有关VirtualEnvs的文档感兴趣。您可能也有兴趣查看,尤其是关于和的章节。(请注意,最后一章使用了
pipenv
而不是
virtualenv.

我已经使用
pip3安装praw安装了praw
。因此,它没有显示在我的系统默认python中,即python 2.7.17

   cam@cam:~$ python
    Python 2.7.17 (default, Sep 30 2020, 13:38:04) 
    [GCC 7.5.0] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import praw
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ImportError: No module named praw
    >>> 
    [5]+  Stopped                 python
    cam@cam:~$ python3
    Python 3.6.9 (default, Oct  8 2020, 12:12:24) 
    [GCC 8.4.0] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import praw
cam@cam:~$python
Python 2.7.17(默认值,2020年9月30日,13:38:04)
linux2上的[GCC 7.5.0]
有关详细信息,请键入“帮助”、“版权”、“信用证”或“许可证”。
>>>进口婴儿车
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
ImportError:没有名为praw的模块
>>> 
[5] +停止python
cam@cam:~$python3
Python 3.6.9(默认值,2020年10月8日,12:12:24)
linux上的[GCC 8.4.0]
有关详细信息,请键入“帮助”、“版权”、“信用证”或“许可证”。
>>>进口婴儿车

这取决于您环境中的python版本(您的版本是Python3.9)。
请尝试
pip3
安装软件包。 我将打开终端并执行以下操作:

$ pip3 install praw
$ python3 myscript.py

如果要将praw与python2一起使用,则必须使用:

pip install praw
pip3 install praw

如果要将praw与python3一起使用,则必须使用:

pip install praw
pip3 install praw

我也有同样的问题,并且正在研究几种方法来解决它

对我来说,解决方案很简单,就是将pyhton文件的名称改为“test”而不是“praw”


是的,我将我的文件命名为“praw.py”,并正在导入导致错误的praw。

非常感谢大家的帮助,但我终于找到了导致问题的原因!在另一个名为requirements.txt的bot文件中,我有:


我只是简单地添加了
praw==7.2.0
,它成功了!我感谢您为帮助我所做的努力:)

您可以在不同的环境中运行代码,而不是安装到不同的环境中。你到底是如何安装模块和运行脚本的?我有一个文本文件中的代码。我使用Pip在命令提示符下安装模块。然后在文本文件中,我导入模块,这就是它出错的地方。您使用什么命令来执行脚本?您是否在虚拟环境中?
pip-V的输出是什么?
which pip
which python
which python3
的输出是什么?pip-V给了我:
pip 21.0,来自C:\Users\Carter\AppData\Local\Packages\PythonSoftwareFoundation.python.3.9_qbz5n2kfra8p0\LocalCache\Local Packages\Python39\site Packages\pip(python 3.9)
。所有这三个命令都给了我:
“which”不能被识别为内部或外部命令、可操作程序或批处理文件。
我遇到的这个问题似乎发生在几个不同的模块上,而不仅仅是praw。它真的感觉这会起作用。。。但是我仍然得到了
modulenofounderror:没有名为'praw'的模块
。。。我一定是做错了什么事:(当我在这个虚拟环境中重新安装PRAW时,它也给了我这个:<代码>警告:您正在使用PIP版本20.2.3;但是,版本21.0.1可用。您应该考虑通过C:\Cuth\卡特\Python \ BANANAS2\VANV\Script \ Python .EX-M PIP安装升级-PIP升级命令。< /代码>,这会影响到我的问题吗?你不应该受到需要升级的
pip
的影响,尽管你可能会尝试更新pip并查看是否有任何变化,但我怀疑它会。你可以尝试运行
pip freeze
来列出你在virtualenv中的包吗?另外,检查以确保你实际上在
venv中。
运行pip虚拟环境中的冻结给了我:
certifi==2020.12.5 chardet==4.0.0 idna==2.10 praw==7.1.4 prawcore==1.5.0 requests==2.25.1 six==1.15.0 update checker==0.18.0 urlib3==1.26.3 websocket client==0.57.0
@Carter Michaelis您找到用pip安装praw的方法了吗?