代码之家  ›  专栏  ›  技术社区  ›  WorkerBee

Python预期:类型错误:不支持%的操作数类型:“int”和“dict”

  •  0
  • WorkerBee  · 技术社区  · 11 年前

    当我尝试运行以下pexpect命令时,我得到了错误:T ypeError: unsupported operand type(s) for %: 'int' and 'dict' 。我真的不明白为什么我会犯这个错误。当我打印字符串时,我输出的结果是我所期望的。

    我的代码:

    p.sendline("sudo date -s \"%(easterndate)s\"") % locals()
    

    打印同一字符串的测试:

    print "string ouput: " + "sudo date -s \"%(easterndate)s\"" % locals()
        output: sudo date -s "Tue Mar 26 14:25:51 EDT 2013"
    
    1 回复  |  直到 11 年前
        1
  •  2
  •   Bakuriu    11 年前

    应该是:

    p.sendline("sudo date -s \"%(easterndate)s\"" % locals())
    

    否则 % 应用于 sendline 呼叫