开发者社区> 问答> 正文

如何用python-subprocess模块获得“python --version”

尝试用subprocess.Popen方式获取“python--version”的值,但是获取的内容是空

from subprocess import *
p = Popen("/usr/bin/python --version",shell=True,stdout=PIPE).stdout
print p.read()

但是打印不出任何东西,同样如果把python --version换成ls 就能取得对应的值,python --version打印出的值不算是标准输出么?

展开
收起
a123456678 2016-06-16 17:21:21 2256 0
2 条回答
写回答
取消 提交回答
  • http://kodango.com
    >>> import sys
    >>> sys.version
    '2.7.10 (default, Jul 30 2016, 19:40:32) \n[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)]'
    >>>

    直接用 Python 自带的基础模块获取版本信息。

    2019-07-17 19:41:29
    赞同 展开评论 打赏
  • from subprocess import *
    p = Popen("python --version",shell=True,stdout=PIPE).stdout
    print p.read()
    改成上面的代码。
    
    /usr/bin/python --version 这个直接输出会一直堵塞。
    2019-07-17 19:41:29
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载