Python中的脚本标准输出比较

时间:2012-08-20 21:21:39

标签: python

我有一个程序试图使用另一个脚本的输出来决定该怎么做。

我从SSH会话中获取Python进程的stdout,其输出为"Verified""Unverified",当我将其打印为时,它出现在命令行中['Verified\n']

我的代码如下。首先我读取输出,然后打印,然后尝试比较它。然而,它总是作为第二种选择出现,a不等于验证 - 即使它应该。也许我对stdout遗漏了一些内容,但我尝试了(if a == )条件的许多变体,包括我在上面列出的括号。我不确定为什么它根本不起作用。

stdin, stdout, stderr = ssh.exec_command("python verify.py")

a = stdout.readlines()
print a

if (a == "Verified"):
    print ("a does equal verified")
else:
    print ("a does not equal verified")

1 个答案:

答案 0 :(得分:1)

readlines()返回一个列表,正如您所指出的那样,它返回\n

你试过这个吗?:

if(len(a) and a[0] == "Verified\n"):
  # verfiied, do your stuff here