[英]Invalid Syntax error python 3.5.2
我在此特定行中出现语法错误。
print "Sense %i:" %(i),
完整代码:
for i in range(len(meas)):
p = sense(p, meas[i])
r = [format(j,'.3f') for j in p]
print "Sense %i:" % (i),
print r,
entropy(p)
p = move(p, mov[i])
r = [format(j,'.3f') for j in p]
print "Move %i:" % (i),
print r,
entropy(p)
print
几件事:
print
是一个函数,不再像Python 2那样使用语句。因此,您需要添加括号以调用该函数, %
运算符。 在Python 3中,您应该使用format
方法(或format
函数), %
运算符通常将tuple
作为第二个参数:表达式“(i)”不是tuple
而是常量。 使用Python时,单例tuple
的尾随逗号如下:“(i,)”。 end=""
将换行符替换为空字符串(但是我不确定这是您想要的) 因此,您可以将代码替换为:
print("Sense {}:".format(i), end="")
编辑:从注释中添加代码
您的代码应像下面这样在Python 3中进行转换:
for i in range(len(meas)):
p = sense(p, meas[i])
r = [format(j,'.3f') for j in p]
print("Sense {0}:".format(i), end="")
print(r, end="")
entropy(p)
p = move(p, mov[i])
r = [format(j,'.3f') for j in p]
print("Move {0}:".format(i), end="")
print(r, end="")
entropy(p)
print()
尝试这个:
print ("Sense %s:" %i)
会很好的工作
在python 3中,print是一个函数,您必须使用方括号: print("Sense %i:" %(i))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.