如何在 PyCharm 中使用已安装的软件包?

2024-11-25 08:50:00
admin
原创
196
摘要:问题描述:在 PyCharm 中,我添加了 Python 环境/usr/bin/python,GNU Radio 在 PyCharm 之外运行良好。但是在 PyCharm 中导入失败,并出现未定义的引用。from gnuradio import gr GNU Radio 位于/usr/local/lib/py...

问题描述:

在 PyCharm 中,我添加了 Python 环境/usr/bin/python,GNU Radio 在 PyCharm 之外运行良好。但是在 PyCharm 中导入失败,并出现未定义的引用

from gnuradio import gr

GNU Radio 位于/usr/local/lib/python2.7/site-packages/gnuradio,我已将其添加到PYTHONPATH

我的PYTHONPATH/usr/local/lib/python2.7/site-packages:/usr/local/lib/python2.7/site-packages/gnuradio


解决方案 1:

添加路径

进入文件 → 设置 → 项目设置 → 项目解释器。

然后按配置解释器,并导航到“路径”选项卡。

pycharm 路径选项卡

按下路径区域中的 + 按钮。您可以将路径输入到想要识别的模块中。

但我不知道路径......

打开python解释器,您可以在其中导入模块。

>> import gnuradio
>> gnuradio.__file__
"path/to/gnuradio"

最常见的是,你会有一个像这样的文件夹结构:

foobarbaz/
  gnuradio/
    __init__.py
    other_file.py

您想将 foobarbaz 添加到此处的路径中。

解决方案 2:

您永远不需要直接修改路径,无论是通过环境变量还是sys.path。无论您使用 os (例如apt-get) 还是pip在虚拟环境中,软件包都将安装到路径上已有的位置。

在您的示例中,GNU Radio 安装在系统 Python 2 的标准site-packages位置,该位置已在路径中。将 PyCharm 指向正确的解释器就足够了;如果不是,则存在其他不明显的错误。可能是它/usr/bin/python没有指向安装 GNU Radio 的同一解释器;请尝试专门指向python2.7二进制文件。或者,PyCharm 以前在检测软件包方面有点糟糕;File > Invalidate Caches > Invalidate and Restart会告诉它重新扫描。

本回答将介绍如何设置项目环境、在不同场景中安装软件包以及配置 PyCharm。我多次参考了《Python 打包用户指南》,该指南由维护官方 Python 打包工具的同一团队编写。


开发 Python 应用程序的正确方法是使用虚拟环境。 安装软件包和版本不会影响系统或其他项目。PyCharm 有一个内置接口来创建虚拟环境并安装软件包。 或者您可以从命令行创建它,然后将 PyCharm 指向它。

$ cd MyProject
$ python2 -m virtualenv env
$ . env/bin/activate
$ pip install -U pip setuptools  # get the latest versions
$ pip install flask  # install other packages

在您的 PyCharm 项目中,转到File > Settings > Project > Project Interpreter。如果您使用virtualenvwrapper或 PyCharm 创建了环境,那么它应该会显示在菜单中。如果没有,请单击齿轮,选择Add Local,然后在环境中找到 Python 二进制文件。PyCharm 将显示所选环境中的所有包。

选择一个环境

手动定位环境


在某些情况下,例如使用 GNU Radio 时,没有要安装的软件包pip,该软件包是在安装 GNU Radio 的其余部分时在系统范围内安装的(例如apt-get install gnuradio)。在这种情况下,您仍然应该使用虚拟环境,但您需要让它知道这个系统软件包。

$ python2 -m virtualenv --system-site-packages env

不幸的是,它看起来有点混乱,因为现在所有系统包都会出现在你的环境中,但它们只是链接,你仍然可以安全地安装或升级包而不会影响系统。


在某些情况下,您将开发多个本地包,并希望一个项目使用另一个包。在这种情况下,您可能认为必须将本地包添加到另一个项目的路径中,但事实并非如此。您应该在开发模式下安装包。这只需要将一个setup.py文件添加到您的包中,无论如何,该文件都是稍后正确分发和部署包所必需的。

setup.py您的第一个项目的最低要求:

from setuptools import setup, find_packages

setup(
    name='mypackage',
    version='0.1',
    packages=find_packages(),
)

然后将其安装在第二个项目的环境中:

$ pip install -e /path/to/first/project

解决方案 3:

对我来说,这只是将目录标记为源根的问题。

解决方案 4:

在PyCharm 2017中添加路径

文件 -> 设置(或 Ctrl+Alt+S)-> 项目 -> 项目解释器

在此处输入图片描述
显示全部

在此处输入图片描述
选择右侧底部的图标

在此处输入图片描述
单击加号按钮为模块添加新路径

解决方案 5:

我的版本是PyCharm专业版3.4,添加路径部分有所不同。

您可以进入“首选项”-->“项目解释器”。选择右上角的工具按钮。

然后选择“更多...”-->“显示所选解释器的路径”-->“添加”。然后就可以添加路径了。

解决方案 6:

不要改变解释器路径。

改变项目结构:

文件 -> 设置 -> 项目 -> 项目结构 -> 添加内容根

解决方案 7:

在 PyCharm 2020.1 CE 和 Professional 中,您可以通过执行以下操作将路径添加到项目的 Python 解释器:

1)点击项目右下角的解释器,选择‘解释器设置’

选择解释器设置

2)点击解释器名称右侧的设置按钮,选择“显示全部”:

选择显示所有解释器

3)确保选择了项目的解释器,然后单击底部工具栏中的第五个按钮“显示所选解释器的路径”:

显示所选 Python 解释器的路径

4)单击底部工具栏中的“+”按钮并添加包含模块的文件夹的路径:

在此处输入图片描述

解决方案 8:

对于 PyCharm 社区版 2016.3.2,它是:

“项目解释器”->右上角的设置图标->“更多”。

然后在右侧应该有一个包图标。将鼠标悬停在它上面时,它应该显示“显示所选解释器的路径”。单击它。

然后单击“添加”按钮或按“alt+insert”添加新路径。

解决方案 9:

作为快速而肮脏的修复,这对我有用:在有问题的导入之前添加这两行:

import sys
sys.path.append('C:\\Python27\\Libsite-packages')

解决方案 10:

在项目资源管理器中,您可以右键单击包含模块的文件夹并设置为“源”。

它将在索引中被解析以完成代码以及其他项目。

解决方案 11:

我是 PyCharm(使用 2018.3.4 CE)和 Python 的新手,所以我机械地尝试遵循上述每个建议来访问我知道位于 system-site-packages 中的 PIL(Pillow)包。但都不起作用。我正准备放弃的时候,我偶然在 Project Explorer 窗口中注意到我的项目下的 venv/pyvenv.cfg 文件。我在该文件中找到了“include-system-site-packages = false”这一行,因此我将其更改为“true”。问题解决了。

解决方案 12:

在我的 PyCharm 2019.3 中,选择项目,然后选择文件 ---> 设置,然后选择项目:YourProjectName,在“项目解释器”中,单击解释器或设置,---> 显示全部... ---> 选择当前解释器 ---> 显示所选解释器的路径 ---> 然后单击“添加”以添加您的库,在我的情况下,它是一个 wheel 包

解决方案 13:

对我来说还有另一个问题。如果您尝试添加一个过去有.idea文件夹的文件夹,但您当前的项目有自己的.idea文件夹,您的 pycharm 可能会因为某种原因而感到困惑——即使您有正确的 python/conda 环境。对我来说,删除.idea另一个项目的文件夹解决了可以找到显然正确安装的 pkgs 的困惑。然后它能够​​在 pycharm 编辑器 GUI snf 中找到它们,停止将它们隐藏在红色中。

解决方案 14:

下载 anaconda
https://anaconda.org/

一旦完成安装 anaconda...

进入设置->项目设置->项目解释器。

然后导航到“路径”选项卡并搜索/anaconda/bin/python

点击应用

在此处输入图片描述

相关推荐
  政府信创国产化的10大政策解读一、信创国产化的背景与意义信创国产化,即信息技术应用创新国产化,是当前中国信息技术领域的一个重要发展方向。其核心在于通过自主研发和创新,实现信息技术应用的自主可控,减少对外部技术的依赖,并规避潜在的技术制裁和风险。随着全球信息技术竞争的加剧,以及某些国家对中国在科技领域的打压,信创国产化显...
工程项目管理   1565  
  为什么项目管理通常仍然耗时且低效?您是否还在反复更新电子表格、淹没在便利贴中并参加每周更新会议?这确实是耗费时间和精力。借助软件工具的帮助,您可以一目了然地全面了解您的项目。如今,国内外有足够多优秀的项目管理软件可以帮助您掌控每个项目。什么是项目管理软件?项目管理软件是广泛行业用于项目规划、资源分配和调度的软件。它使项...
项目管理软件   1354  
  信创国产芯片作为信息技术创新的核心领域,对于推动国家自主可控生态建设具有至关重要的意义。在全球科技竞争日益激烈的背景下,实现信息技术的自主可控,摆脱对国外技术的依赖,已成为保障国家信息安全和产业可持续发展的关键。国产芯片作为信创产业的基石,其发展水平直接影响着整个信创生态的构建与完善。通过不断提升国产芯片的技术实力、产...
国产信创系统   21  
  信创生态建设旨在实现信息技术领域的自主创新和安全可控,涵盖了从硬件到软件的全产业链。随着数字化转型的加速,信创生态建设的重要性日益凸显,它不仅关乎国家的信息安全,更是推动产业升级和经济高质量发展的关键力量。然而,在推进信创生态建设的过程中,面临着诸多复杂且严峻的挑战,需要深入剖析并寻找切实可行的解决方案。技术创新难题技...
信创操作系统   27  
  信创产业作为国家信息技术创新发展的重要领域,对于保障国家信息安全、推动产业升级具有关键意义。而国产芯片作为信创产业的核心基石,其研发进展备受关注。在信创国产芯片的研发征程中,面临着诸多复杂且艰巨的难点,这些难点犹如一道道关卡,阻碍着国产芯片的快速发展。然而,科研人员和相关企业并未退缩,积极探索并提出了一系列切实可行的解...
国产化替代产品目录   28  
热门文章
项目管理软件有哪些?
云禅道AD
禅道项目管理软件

云端的项目管理软件

尊享禅道项目软件收费版功能

无需维护,随时随地协同办公

内置subversion和git源码管理

每天备份,随时转为私有部署

免费试用