最近,学习别人的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')