python - 升级python包时是否需要停止所有python脚本?

标签 python python-3.x anaconda conda

如果正在运行使用包X的python脚本,正在升级包X,是否会导致权限问题导致升级失败?

我正在使用 Windows 10、在 python v3.6 上运行的 Anaconda v5.2 和 conda 来更新包。

最佳答案

虽然纯 Python 文件在导入时会在内存中编译,之后源代码(几乎)不再相关,但这还没有结束。

包可能有延迟加载的额外 Assets ,或者您的程序或其依赖项可能会按需加载依赖模块,因此,如果在升级期间运行,它可能会加载意外版本的包/资源,甚至是升级到一半的包.

此外, native (=非 Python-only)模块 - Windows 上的 .pyd 文件 - 是在导入过程中加载的 dll。由于 dll 在内存中映射且不共享,因此不允许在加载时替换它们,因此这可能会阻止相关包的升级。

关于python - 升级python包时是否需要停止所有python脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53938886/

相关文章:

python - 如何将 oracle DB 与我的 python 脚本连接?

python - 按多个值过滤列

python - pandas - 用大写字母替换字符串中的一个字母

python - Jax 找不到静态参数

python - python 中 time.sleep 的奇怪打印行为

python - 如何在运行 Django 测试之前加载测试 yaml 文件?

python-3.x - 如何在 tkinter OptionMenu 中允许多个选择?

python-3.x - 创建 pip 包时,如何使用 Manifest.in 排除目录?

python - 如何使用 conda 启用 gl2ps 安装 vtk

python - conda 为什么要创建新的安装环境