我已经将Pygments安装到了我的virtualenv中,并且它似乎可以正确导入到我的项目中。没有名为Pygments的模块
我使用PyCharm,和我越来越从IDE没有导入错误。
但是,当我尝试在本地主机上运行它,我得到以下错误:
我得到同样的问题,如果我尝试导入整个Pygments模块。任何想法可能会造成这种情况?
我已经将Pygments安装到了我的virtualenv中,并且它似乎可以正确导入到我的项目中。没有名为Pygments的模块
我使用PyCharm,和我越来越从IDE没有导入错误。
但是,当我尝试在本地主机上运行它,我得到以下错误:
我得到同样的问题,如果我尝试导入整个Pygments模块。任何想法可能会造成这种情况?
让我们继续,找出当您“运行”您的应用程序时,您真正使用的是哪一个解释器。
首先,我把这个命令你做的Pygments来做进口之前: import sys; print(sys.executable)
这会给你什么Python解释器使用的一个很好的迹象。
如果您在PyCharm内运行的东西,您可能忘记设置项目解释器。上面的行应该完全告诉你。
无论如何,前进。要设置在PyCharm项目的解释,去File > Settings
,你会看到该菜单:
转到Project Interpreter
选项(左侧)。在屏幕的右侧有小档案,如果按下此按钮,则会弹出一个小菜单:
我假设您的虚拟环境位于本地计算机上(而不是某些虚拟机中)。如果这是真的,你可以点击Add Local
(添加本地python解释器)。
在下一个菜单中,假设您的virtualenv位于目录/home/myuser/virtualenv
中,请继续并选择文件/home/myuser/virtualenv/bin/python
。
就是这样。
现在我假设你是从PyCharm运行项目。
如果我错了,你是从通过如python -m my_module
命令控制台运行它,而你在Linux下,继续前进,检查你键入type python
使用的是什么python
解释。这会告诉你,如果这是你向我们展示站点包的python。
如果不是,请确保激活该虚拟环境(在Linux上它是source /home/myuser/virtualenv/bin/activate
)。对于Windows,谷歌是你的朋友。
其他可能发生的事情是,您正在使用一些稍微懒惰的shell,即使您已经安装了虚拟环境,它仍然使用之前使用的python版本。 在bash
中,使用命令hash -r
,在zsh
中使用命令rehash
。这将更新你的shell来了解新的python。
如果什么都行不通,只是发布你的结果,我可以告诉你从那时起该做什么。
从您的最新评论看来,您可能不是activated
您的虚拟环境。
当您将cd
纳入您的目录python manage.py runserver
时,您使用的是错误的python
。要亲自检查,只需转到您的终端,然后cd
进入包含您的manage.py
脚本的目录。在那里输入python
。里面的蟒蛇控制台,运行此:import sys; print(sys.executable)
[编辑]
如前所述,它会/usr/bin/python
。这不是你想要的python可执行文件。
为了使python
在该上下文中引用已安装pygments的python,您需要激活虚拟环境。这仅仅意味着使命令python
成为您期望的命令。
这是很容易使用这个命令来完成source ~/Desktop/Misc/Hobbies/Programming/Projects/Pygamers/venv/bin/activate
运行此命令后,您可以再次键入python manage.py runserver <whatever options you want>
,它应该工作。
如果没有,那么如果您使用的是zsh,则输入hash -r
(如果您使用的是bash shell)或rehash
。通过输入命令env | sort
,并找到密钥SHELL
,可以找出正在使用的shell。
如果它仍然不起作用,激活你的虚拟环境后,运行命令type python
并发布结果,但如果你做的一切都正确的话,它有99.99%的机会。
所以我用'print(sys.executable)'返回'usr/bin/python',它不应该是。我在PyCharm中将解释器设置为正确的本地virtualenv,所以我不确定它是如何使用错误的版本的。我添加了一个PyCharm的图像,向我的问题展示解释器。 – 123
你如何运行你的应用程序? Pycharm设置正确,但实际运行代码的解释器与pycharm无关,并且是导致问题的原因之一。请分享您在运行应用程序时采取的确切步骤。例如,你是否使用pycharm中的“运行”按钮?如果是这样,请使用您的配置放置一个打印屏幕。也许你还没有在那里指定合适的翻译。 Pycharm很复杂,首先理解python,然后pycharm,否则你会陷入如下奇怪的情况:D –
我通过localhost运行项目,而不是PyCharm。这可能与我的virtualenv有一些关系吗? – 123
你有没有把它加到你的'INSTALLED_APPS'? –
可能您已经将'Django'安装为全局包,并且您不在PyCharm中设置virtualenv。 –
如果我将它添加到已安装的应用程序中,我会收到“应用程序尚未加载”错误。 – 123