如何安装不会破坏我的应用程序的最高版本的Python包?

问题描述

您是否将requirements.txt中的所有版本锚定为一个特定的数字?这是正确的方法吗?有什么方法可以获取不破坏我的应用程序的最新版本?为了不丢失安全更新等。

解决方法

如果新代码语法不向后兼容,则安装最新的依赖项可能会破坏您的应用程序。这是维护requirements.txt文件的方法。

  • 每次我为新项目开发时都创建一个新的虚拟环境
  • 在虚拟环境中安装所有依赖项
  • 从该虚拟环境运行pip freeze > requirements.txt以生成文件
  • Readme文件中添加Python版本

通过这种方式,我始终可以肯定地确定Python版本和构建应用程序所依赖的版本。当然,这不能解决可能与操作系统类型/版本兼容性相关的其他问题。

创建了诸如Docker之类的工具来解决所有此类依赖性和跨平台兼容性问题,因此值得探索。

编辑

如果您仍然希望始终拥有该软件包的最新版本,只需删除版本号并保留软件包名称即可。

例如代替mysql-connector==2.2.9使用mysql-connector

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...