在回答一个特定的问题时,我在试图解释Python文档时偶然发现了这个问题
参考os — Miscellaneous operating system interfaces中os.uname和 os.unsetenv(varname)的文档,我想知道如何解释
可用性:最新的Unix风格。
可用性:大多数Unix、Windows的风格。
如何确定最近和最的含义。我如何知道我的Python脚本是否应该在我针对的特定系统上正常工作。我应该一直依靠事实吗
try
<do something>
except <some-failure>:
<fallback>
例如
try
import os
_uname = os.uname()
except AttributeError:
import platform
_uname = platform.uname()
即使我知道我的目标是Unix风格和版本?你知道吗
是的,您应该始终使用
try-except
表单,因为它可以在“不安全”版本工作的任何地方工作,也可以在它不工作的地方工作。你知道吗但是,对于这个特定的Python函数,您可以使用一些特定于领域的知识来推理它将在哪里工作。
os.uname
基于同名的系统调用。从man 2 uname
,我们得到的可用性是“SVr4,POSIX.1-2001”,这意味着它将在任何基于POSIX标准2001版或更高版本(或来自SVr4的版本)的Linux发行版上可用。也就是说,实际上,您将在个人计算机上遇到的每一个Linux发行版。你知道吗相关问题 更多 >
编程相关推荐