os.system 返回什么以及如何转换其输出?



我是os库的新手,在尝试解码二维码并仅提取输出的有意义部分时,我收到了此错误:

AttributeError: 'int' object has no attribute 'replace'

乍一看,我认为我应该强制转换os.system()函数的返回值,但我再次收到相同的错误。

这是我的代码:

import os
test = str(os.system("zbarimg *.png"))
test.replace("QR-Code:", "")
print(test)

os.system()命令返回进程的退出代码或状态(整数(,具体取决于您的系统是 Windows 还是 Unix。这与预期不同,这是命令的结果zbarimg *.png.

要运行 shell 命令并获取其输出,您可以检查对此问题的响应。

您可能需要 subprocess.check_output((,因为它允许您

运行带有参数的命令,并将其输出作为字节字符串返回。

最新更新