最近,学习别人的blog,总结了下几个知识点,以备不时之需,面试中偶尔被问到:一种结果多种方法。以下为:
获取系统执行命令的返回值和输出结果:
1、os.system: 调用系统命令,完成后退出,显示输出、返回值(一般执行成功就为0)。
>>> import os
>>> os.system('pwd')
/home/ubuntu
0
2、os.popen: 返回的是 file read 的对象,对其再进行read() 的操作可以看到执行的输出
>>> import os
>>> a=os.popen('pwd')
>>> print a
<open file 'pwd', mode 'r' at 0x29c2c00>
>>> print a.read()
/home/ubuntu
3、commands.getstatusoutput: 获得到返回值和输出
>>> import commands
>>> (status, output) = commands.getstatusoutput('pwd')
>>> print status,output
0 /home/ubuntu
>>> commands.getstatusoutput('pwd')
(0, '/home/ubuntu')