在PyCharm中配置项目(十五):管理项目依赖性

PyCharm使跟踪项目中未满足的依赖关系成为可能,并提供与主要依赖关系管理方法的集成。requirements.txt 和Pipfile。

PyCharm是一种Python IDE,其带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具。此外,该IDE提供了一些高级功能,以用于Django框架下的专业Web开发。

PyCharm最新版本2019.3现已发布,增加用于Jupyter笔记本的交互式小部件,MongoDB支持以及所有Python 3.8功能的代码帮助,还有其他功能改进提高Python语言开发效率!小编已将PyCharm2019.3安装包上传至官网,感兴趣的朋友欢迎下载体验~

PyCharm最新版2019.3

管理项目依赖性

PyCharm使跟踪项目中未满足的依赖关系成为可能,并提供与主要依赖关系管理方法的集成。requirements.txt 和Pipfile。

  • requirements.txt包含应用程序依赖的一组软件包。将具有该名称的文件添加到项目根目录后,Python Integrated tools会自动检测到该文件 。

    有关详细说明,请参见使用requirements.txt。

  • Pipfile仅适用于具有Pipenv虚拟环境的项目。它还可以管理项目依赖项集。但是,此工具通过创建项目环境的精确快照(包括哈希码和确切的程序包版本),为安全敏感的部署提供了更多功能。

    有关详细说明,请参见使用pipfile。

使用requirements.txt

PyCharm使跟踪项目中未满足的依赖关系成为可能,并提供与主要依赖关系管理方法的集成。

定义要求

1、在您的项目的根目录中创建一个新文件

2、在“ 新建文件”对话框中,指定文件名。需求文件的建议名称是requirements.txt将具有该名称的文件添加到项目根目录后,Python Integrated tools会自动检测到该文件

3、以纯文本形式键入所需软件包的名称,例如:

Django==2.0.3Flask==0.12.2

请注意,支持递归需求语法:您可以使用主需求文件,并在-r语法中包含其他需求 。

您也可以pip freeze > requirements.txt在命令行中运行以为您的项目生成requirements.txt文件。

如果需求文件的名称不同于requirements.txt,或者在一个项目中有多个需求文件,则必须将要应用的需求文件通知PyCharm。

配置默认需求文件

1、打开设置/首选项对话框,Ctrl+Alt+S然后选择 工具| Python集成工具。

2、在打包需求文件字段中,输入需求文件的名称或单击浏览按钮并找到所需的文件。

3、单击确定保存更改。

尽管您可以根据依赖项管理文件的语法来编辑它们,但是PyCharm提供了快速修复程序,可以填充这些文件。

填充依赖性管理文件

1、创建setup.py或requirements.txt,如部分所述创建并运行setup.py和 定义需求。

2、在importPython文件的语句中,单击尚未导入的包。PyCharm建议快速修复:

3、选择并应用建议的快速修复。程序包已添加到依赖项管理文件中。

PyCharm提供了与不满意的依赖项有关的快速修复和通知。

安装所需的软件包

启用包装要求检查后,将显示通知栏。您可以在“ 首选项/设置” |“设置”中启用它。编辑器 检查对话框。

1、打开一个指定了需求文件的项目,在编辑器中打开的任何Python或需求文件的顶部都会显示一个通知栏:

2、单击提供的链接之一,以满足或忽略要求。

使用pipfile

Pipfile是Pipenv虚拟环境 用于管理项目依赖项的专用文件。该文件对于使用Pipenv是必不可少的。当为新项目或现有项目创建Pipenv环境时, 会自动生成Pipfile。同样,当您第一次在PyCharm中打开带有Pipfile文件的项目时,Pipenv虚拟环境将自动配置。

考虑一项从头开始创建依赖项列表的任务。

在Pipfile中记录依赖项以管理项目包

1、当PyCharm为新的pipenv虚拟环境创建Pipfile时,该文件如下所示:

该python_version参数是您在创建新的pipenv环境时指定的基本解释器的版本。在此packages部分中,您可以列出项目所需的软件包。

2、请注意,PyCharm建议您安装特定于Pipfile的插件。单击相应的链接以安装Tom的“最小语言”(TOML)的插件。您必须重新启动PyCharm才能启用插件。重新启动后,您将看到确认确认Pipfile格式的消息:

3、通过修改此packages部分来添加新的程序包依赖性。

[packages]django = "*"

4、每当您修改Pipfile文件时,PyCharm都会建议以下操作之一:

  • pipenv lock—将新要求记录到Pipfile.lock文件中。
  • pipenv update—将新要求记录到Pipfile.lock文件中,并将缺少的依赖项安装在项目解释器上。

这一步非常重要,因为PyCharm根据Pipfile.lock文件中记录的信息来管理项目依赖 项。因此,添加到Pipfile但未锁定的任何要求都将被忽略。

让我们选择pipenv update命令来安装Django软件包。

5、确保Django在已安装软件包的列表中。 在“设置/首选项”对话框中 Ctrl+Alt+S,展开“ 项目<项目名称>”节点,单击“ 项目解释器”,然后检查软件包列表。

6、现在探索相反的工作流程。在“ 项目解释器”对话框中,单击

加以添加Flask包。请注意,pipenv使用标准过程限制配置索引。所有可用的软件包都是从Pipfile中指定的源中添加的。这些软件包是通过pipenv而不是pip进行安装,删除和更新的。

7、一旦添加了Flask软件包,请关闭“ 可用软件包”对话框并查看Pipfile。[packages]现在,该部分如下所示:

[packages]django = "*"flask = "*"

应用依赖

考虑一种情况,当您签出或更新了项目源文件并看到以下消息:

因此,PyCharm报告您的虚拟环境不满足当前版本的Pipfile中列出的要求。

2、单击Pipfile.lock中的安装要求以安装缺少的软件包。

您可能已经注意到,沿Pipfile,该Pipfile.lock文件需要在管理pipenv项目需求的关键重要作用。每次执行pipenv lock或时pipenv update,都会获取虚拟环境的当前快照。检查以下片段:

该文件记录了为项目安装的软件包的确切版本。它还生成了哈希码,以促进应用程序的安全部署。从不受信任的源下载依赖项时,哈希码用于确保项目文件受信任。

想要了解或购买PyCharm正版授权的朋友可以咨询官方客服

标签:

来源:慧都

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年1月10日
下一篇 2020年1月10日

相关推荐

发表回复

登录后才能评论