尝试用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打印出的值不算是标准输出么?
>>> 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 自带的基础模块获取版本信息。
from subprocess import *
p = Popen("python --version",shell=True,stdout=PIPE).stdout
print p.read()
改成上面的代码。
/usr/bin/python --version 这个直接输出会一直堵塞。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。