Python 不在文件系统中保存 .pyc 文件

标签 python linux

我有一个在嵌入式 Linux 系统中运行的 python 应用程序。我已经意识到 python 解释器默认情况下不会将编译后的 .pyc 文件保存在导入模块的文件系统中。

如何让解释器保存它?文件系统权限正确。

最佳答案

有很多地方可以关闭这种默认启用的行为。

  • PYTHONDONTWRITEBYTECODE 可以在环境中设置
  • sys.dont_write_bytecode 可以通过带外机制设置(即站点本地初始化文件,或修补的解释器构建)。
  • 文件权限可能不允许。这不需要很明显!从文件系统挂载标志到 SELinux 标签的任何东西都可能产生这个结果。我建议使用 strace 或类似工具(适用于您的平台)来确定是否存在创建这些文件的尝试

在嵌入式系统上,将此作为明确的步骤而不是运行时行为更有意义:这可确保性能一致(而不是让某些运行比其他运行花费更长的时间来执行)。使用 py_compilecompileall 显式提前运行。

关于Python 不在文件系统中保存 .pyc 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32104282/

相关文章:

python - python中的异步I/O是什么?

python - 如何将带有日期的文本写入 JSON 文件而不对其进行序列化

linux - 在 CentOS 7 中安装 Libreoffice Headless for 5.0.x

linux - 如何制作一个可以为执行多步程序提供多个输入的脚本?

linux - CMAKE:忽略唯一变量名称

python - pandas to_datetime 函数问题

python - 如何让selenium与新页面的新HTML元素交互

python - 如何使用python代码将Windows网络驱动器连接到具有Linux环境的Azure Function App

c - 哪个内核函数调用了用户空间中实现的 timer_settime() 和定时器处理程序?

linux - 如何在Windows上调试蓝牙堆栈,使用什么工具