为了账号安全,请及时绑定邮箱和手机立即绑定

Python中os.system()的返回值是什么?

Python中os.system()的返回值是什么?

翻阅古今 2019-12-03 10:05:38
我遇到了这个:>>> import os>>> os.system('ls')file.txt README0什么是返回值os.system()?为什么我得到0?
查看完整描述

3 回答

?
慕后森

TA贡献1802条经验 获得超5个赞

的返回值os.system取决于OS。


在Unix上,返回值是一个16位数字,包含两个不同的信息。从文档中:


一个16位数字,其低字节是杀死进程的信号号,其高字节是退出状态(如果信号号为零)


因此,如果信号编号(低字节)为0,则从理论上讲,将结果移位8位(result >> 8)以获取错误代码是安全的。该功能os.WEXITSTATUS正是这样做的。如果错误代码为0,则通常意味着该过程已退出且没有错误。


在Windows上,文档指定的返回值os.system取决于外壳程序。如果shell是cmd.exe(默认值),则该值是进程的返回码。同样,0表示没有错误。


查看完整回答
反对 回复 2019-12-03
  • 3 回答
  • 0 关注
  • 5328 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信