IntelliJ conda集成 - python

我在myFile.py中:

import pkg_resources
installed_packages = pkg_resources.working_set
installed_packages_list = sorted(["%s==%s" % (i.key, i.version)
                                  for i in installed_packages])
print(installed_packages_list)
import rospy

我在ros env中确实有ros包

(ros) $ pip list | grep rospy
rospy                         1.11.21   
rospy-message-converter       0.4.0   

如果在设置ros conda env后从IDEA运行此文件

/home/username/anaconda3/envs/ros/bin/python /home/username/Projects/Python/myProject/myFile.py
['argparse==1.4.0', 'catkin-pkg==0.4.9', 'certifi==2018.10.15', 'docutils==0.14', 'numpy==1.15.4', 'pip==18.1', 'pyparsing==2.3.0', 'python-dateutil==2.7.5', 'python==2.7.15', 'pyyaml==3.13', 'rospkg==1.1.7', 'setuptools==40.6.2', 'six==1.11.0', 'wheel==0.32.3', 'wsgiref==0.1.2']
Traceback (most recent call last):
  File "/home/username/Projects/Python/myProject/myFile.py", line 8, in <module>
    import rospy
ImportError: No module named rospy

Process finished with exit code 1

我使用以下配置:

IntelliJ conda集成 - python

但是,如果我在终端上运行相同的命令,它将起作用:

在终端上,即使没有conda activate ros

$ /home/username/anaconda3/envs/ros/bin/python /home/username/Projects/Python/myProject/myFile.py
['actionlib==1.11.13', 'angles==1.9.11', 'argparse==1.4.0', 'base-local-planner==1.12.16', 'bondpy==1.7.20', 'camera-calibration-parsers==1.11.13', 'camera-calibration==1.12.23', 'camera-info-manager-py==0.2.3', 'capabilities==0.2.0', 'catkin-pkg==0.4.9', 'catkin==0.6.19', 'certifi==2018.10.15', 'controller-manager-msgs==0.9.7', 'controller-manager==0.9.7', 'create-dashboard==2.3.1', 'create-driver==2.3.0', 'create-node==2.3.0', 'cv-bridge==1.11.16', 'diagnostic-analysis==1.9.3', 'diagnostic-common-diagnostics==1.9.3', 'diagnostic-updater==1.9.3', 'docutils==0.14', 'dynamic-reconfigure==1.5.49', 'gazebo-plugins==2.4.16', 'gazebo-ros==2.4.16', 'gencpp==0.5.5', 'genlisp==0.4.15', 'genmsg==0.5.8', 'genpy==0.5.10', 'image-geometry==1.11.16', 'interactive-markers==1.11.3', 'kobuki-dashboard==0.4.2', 'laser-geometry==1.6.4', 'message-filters==1.11.21', 'numpy==1.15.4', 'openni2-launch==0.4.1', 'pip==18.1', 'pluginlib==1.10.7', 'pyparsing==2.3.0', 'python-dateutil==2.7.5', 'python-qt-binding==0.2.19', 'python==2.7.15', 'pyyaml==3.13', 'qt-dotgraph==0.2.33', 'qt-gui-cpp==0.2.33', 'qt-gui-py-common==0.2.33', 'qt-gui==0.2.33', 'resource-retriever==1.11.8', 'rocon-app-manager==0.7.13', 'rocon-app-utilities==0.7.13', 'rocon-apps==0.7.13', 'rocon-console==0.1.23', 'rocon-ebnf==0.1.23', 'rocon-gateway-utils==0.7.10', 'rocon-gateway==0.7.10', 'rocon-hub-client==0.7.10', 'rocon-hub==0.7.10', 'rocon-interactions==0.1.23', 'rocon-launch==0.1.23', 'rocon-master-info==0.1.23', 'rocon-python-comms==0.1.23', 'rocon-python-redis==0.1.23', 'rocon-python-utils==0.1.23', 'rocon-python-wifi==0.1.23', 'rocon-qt-library==0.7.12', 'rocon-remocon==0.7.12', 'rocon-semantic-version==0.1.23', 'rocon-uri==0.1.23', 'rosbag==1.11.21', 'rosboost-cfg==1.11.14', 'rosclean==1.11.14', 'roscreate==1.11.14', 'rosgraph==1.11.21', 'roslaunch==1.11.21', 'roslib==1.11.14', 'roslint==0.10.0', 'roslz4==1.11.21', 'rosmake==1.11.14', 'rosmaster==1.11.21', 'rosmsg==1.11.21', 'rosnode==1.11.21', 'rosparam==1.11.21', 'rospkg==1.1.7', 'rospy-message-converter==0.4.0', 'rospy==1.11.21', 'rosservice==1.11.21', 'rostest==1.11.21', 'rostopic==1.11.21', 'rosunit==1.11.14', 'roswtf==1.11.21', 'rqt-action==0.4.9', 'rqt-bag-plugins==0.4.8', 'rqt-bag==0.4.8', 'rqt-console==0.4.8', 'rqt-dep==0.4.9', 'rqt-graph==0.4.8', 'rqt-gui-py==0.4.8', 'rqt-gui==0.4.8', 'rqt-image-view==0.4.9', 'rqt-launch==0.4.8', 'rqt-logger-level==0.4.8', 'rqt-moveit==0.5.7', 'rqt-msg==0.4.8', 'rqt-nav-view==0.5.7', 'rqt-plot==0.4.8', 'rqt-pose-view==0.5.8', 'rqt-publisher==0.4.8', 'rqt-py-common==0.4.8', 'rqt-py-console==0.4.8', 'rqt-reconfigure==0.4.10', 'rqt-robot-dashboard==0.5.7', 'rqt-robot-monitor==0.5.7', 'rqt-robot-steering==0.5.9', 'rqt-runtime-monitor==0.5.7', 'rqt-rviz==0.5.7', 'rqt-service-caller==0.4.8', 'rqt-shell==0.4.9', 'rqt-srv==0.4.8', 'rqt-tf-tree==0.5.8', 'rqt-top==0.4.8', 'rqt-topic==0.4.10', 'rqt-web==0.4.8', 'rviz==1.11.19', 'sensor-msgs==1.11.10', 'setuptools==40.6.2', 'six==1.11.0', 'smach-ros==2.0.1', 'smach==2.0.1', 'smclib==1.7.20', 'tf-conversions==1.11.9', 'tf2-geometry-msgs==0.5.17', 'tf2-kdl==0.5.17', 'tf2-py==0.5.17', 'tf2-ros==0.5.17', 'tf2-sensor-msgs==0.5.17', 'tf==1.11.9', 'unique-id==1.0.5', 'warehouse-ros==0.8.8', 'wheel==0.32.3', 'world-canvas-client-py==0.1.0', 'world-canvas-server==0.1.0', 'world-canvas-utils==0.1.0', 'wsgiref==0.1.2', 'xacro==1.9.5']

所以IDEA不执行打印的命令吗?它在运行其他内容吗?为什么我在IDEA内看到conda env ros的安装软件包减少了,我该如何解决此问题?

我上线了

理念2018.3
Ubuntu 14.04

更新:

我已经配置了conda env并按如下方式进行了验证:

在终端上:

$ conda activate ros
(ros) $ python
Python 2.7.15 |Anaconda, Inc.| (default, Nov 13 2018, 23:04:45) 
[GCC 7.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> print(sys.executable)
/home/username/anaconda3/envs/ros/bin/python

在IDEA的Python控制台上>工具> Python控制台

PyDev console: starting.
Python 2.7.15 |Anaconda, Inc.| (default, Nov 13 2018, 23:04:45) 
[GCC 7.3.0] on linux2
import sys
print(sys.executable)
/home/username/anaconda3/envs/ros/bin/python

参考方案

当您尝试在系统终端(IDEA外部)中运行此脚本时,是否使用了相同的解释器?如果不是,请重试,但使用与IDEA中相同的解释器。你有同样的错误吗?

如果没有,请尝试以下操作:

使用相同的解释器在系统终端中运行import os
运行print(os.environ['PATH'])
复制结果并将其作为PATH环境变量添加到您的“运行/调试配置”中

在返回'Response'(Python)中传递多个参数 - python

我在Angular工作,正在使用Http请求和响应。是否可以在“响应”中发送多个参数。角度文件:this.http.get("api/agent/applicationaware").subscribe((data:any)... python文件:def get(request): ... return Response(seriali…

Python exchangelib在子文件夹中读取邮件 - python

我想从Outlook邮箱的子文件夹中读取邮件。Inbox ├──myfolder 我可以使用account.inbox.all()阅读收件箱,但我想阅读myfolder中的邮件我尝试了此页面folder部分中的内容,但无法正确完成https://pypi.python.org/pypi/exchangelib/ 参考方案 您需要首先掌握Folder的myfo…

R'relaimpo'软件包的Python端口 - python

我需要计算Lindeman-Merenda-Gold(LMG)分数,以进行回归分析。我发现R语言的relaimpo包下有该文件。不幸的是,我对R没有任何经验。我检查了互联网,但找不到。这个程序包有python端口吗?如果不存在,是否可以通过python使用该包? python参考方案 最近,我遇到了pingouin库。

AttributeError:'AnonymousUserMixin'对象没有属性'can' - python

烧瓶学习问题为了定制对匿名用户的要求,我在模型中设置了一个类: class MyAnonymousUser(AnonymousUserMixin): def can(self, permissions): return False def is_administrator(self): return False login_manager.anonymous…

如何用'-'解析字符串到节点js本地脚本? - python

我正在使用本地节点js脚本来处理字符串。我陷入了将'-'字符串解析为本地节点js脚本的问题。render.js:#! /usr/bin/env -S node -r esm let argv = require('yargs') .usage('$0 [string]') .argv; console.log(argv…