我的cmd Python中的语法错误在哪里?

时间:2016-07-01 14:25:15

标签: python

几个小时以来,我的命令出现了一些错误:

 message = "test."+hostname+"."+service+" "current_state_id "%d\n" % int(time.time())

错误是:

  

SyntaxError:语法无效

结果将是 message = test.myhost.myservice 2 1467383079

问题出在哪里?

2 个答案:

答案 0 :(得分:0)

你至少有两个; current_state_id与它之前的空格或之后的字符串之间没有任何内容。

您似乎知道字符串替换,因为您在该代码中使用它;你应该在整个过程中使用它,而不是使用连接和替换的组合。

message = "test.%s.%s %s %d\n" % (hostname, service, current_state_id, int(time.time()))

或使用新的format方法:

message = "test.{}.{} {} {}\n".format(hostname, service, current_state_id, int(time.time()))

答案 1 :(得分:0)

有两个错误:

1)你需要一个' +'之间'" "'和' current_state_id'。

2)你需要一个' +'介于' current_state_id'之间和'"%d \ n"'。

这是正确的版本:

  

message =" test。" + hostname +"。" + service +" &#34 + + current_state_id"%d \ n" %int(time.time())