调用函数 os.popen() 给出意外的 return 对象

Calling function os.popen() gives unexpected return object

我正在使用 os.popen() 调用一些参数。当我在终端中调用参数本身时,它完美地工作并且我得到了预期的 return 对象。但是当我使用 os.popen() 调用它时,我得到

os._wrap_close object at 0x7f6ec0d3d1d0>

代码:

    > command = "python -m json.tool \"" + path + video +"-something.json\"| grep \"ext\\"\"  
    > result = os.popen(command) 
    > print(result)

我觉得得到不同的结果很困惑,而实际上应该是一样的

此命令打开一个管道到命令(stdout,带有 popen2/3/4 stdin,stderr)和 returns 一个打开的文件对象而不是命令的 stdout。 (python docs)
因此,为了获得命令的结果,您必须读取打开的文件,这可以通过 result.read() 完成。

Here 很好地解释了不同的 popen 及其(基本)用法。