Python——Print函数的Invalid syntax错误

写在前面

最近学习Tensorflow,成功地完成了第一个例子——基于一个模拟数据集,训练一个神经网络来完成一个简单的二分类问题。但是在编写程序的过程中,还是遇到这个小问题,查阅了一下还是挺常见的,就记录一下。

Buy提示

    print sess.run(w1)
             ^
SyntaxError: invalid syntax

Bug原因

主要参考这篇文章:Invalid syntax when using “print”? [duplicate]

根据这篇文章所说,造成这个Bug的主要原因是在Python3中,以前的print “语句”替换成了print “函数”,

根据What’s New In Python 3.0 中所说,有如下代码:

Old: print "The answer is", 2*2
New: print("The answer is", 2*2)

Old: print x,           # Trailing comma suppresses newline
New: print(x, end=" ")  # Appends a space instead of a newline

Old: print              # Prints a newline
New: print()            # You must call the function!

Old: print >>sys.stderr, "fatal error"
New: print("fatal error", file=sys.stderr)

Old: print (x, y)       # prints repr((x, y))
New: print((x, y))      # Not the same as print(x, y)!

简而言之,就是Python3中的print不再是一个类似命令的语句,而是一个函数,所以应该要加一个括号。

解决方法

给print后面的语句整体加一个括号就好了。之前的错误就应该修改为:

print (sess.run(w1))
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值