用Python编写stdout比较脚本



我有一个程序,它试图使用另一个脚本的输出来决定要做什么。

我从SSH会话接收Python进程的stdout,其输出是"Verified""Unverified",当我将其打印为['Verifiedn']时,它会出现在命令行上。

我的代码在下面。首先,我读取输出,然后打印,然后尝试进行比较。然而,它总是作为第二个选项出现,即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")

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

你试过这个吗?:

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

最新更新