python 2.7 中如何执行java -version或者python --version 命令?

这两条命令在CDM窗口中执行都是又返回结果的,但是在python中却没任何返回结果,我写的代码如下,不晓得哪里出错了,哪位大神帮忙看下?#!/usr/bin/envpyt... 这两条命令在CDM窗口中执行都是又返回结果的,但是在python中却没任何返回结果,我写的代码如下,不晓得哪里出错了,哪位大神帮忙看下?
#! /usr/bin/env python
#coding=GBK
import os
def apk():
bb1=os.popen('python --version')
aa1=os.popen('java -version')
print bb1.read(),
print aa1.read(),
os.system('pause')

if __name__=='__main__':
apk()
展开
 我来答
sylecn
2016-07-17 · TA获得超过2991个赞
知道大有可为答主
回答量:1169
采纳率:57%
帮助的人:712万
展开全部

os.popen已经是明确不推荐使用的。建议改用subprocess.

import subprocess


def main():
    python_version = subprocess.check_output(["python", "--version"])
    java_version = subprocess.check_output(["java", "-version"])
    print python_version, java_version

    raw_input()    # equivalent to your pause call


if __name__ == '__main__':
    main()
追问
非常感谢!!这种方法确实可以,但是还有一个问题就是os.popen可以赋值,但是subprocess为啥不能赋值。就是不能.read()出来,我把代码修改成下面这样一直报错,好纠结~
pythonver =python_version.read()
javaver=java_version.read()
print pythonver, javaver,只能写这么多字数受限
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式