[英]Invalid Python Syntax Error
在shell中,当我尝试导入程序时,我得到以下响应。
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "tweet.py", line 26
print "Favorited: %s" % (result['text'])
^
SyntaxError: invalid syntax
为什么print "Favorited: %s" % (result['text'])
返回错误? 谷歌搜索一直没有帮助,这对我来说更早......
更新,我正在运行以下版本的Python:
Python 2.7.5 |Anaconda 1.6.1 (x86_64)| (default, Jun 28 2013, 22:20:13)
[GCC 4.0.1 (Apple Inc. build 5493)] on darwin
再次更新,这是功能:
def fetch_tweet(tweet):
try:
result = t.favorites.create(_id=tweet['id'])
print "Favorited: %s" % (result['text'])
return result
# when you have already favourited a tweet, this error is thrown
except TwitterHTTPError as e:
print "Error: ", e
return None
更新#3 - 发现错误!
事实证明我的python解释器真的很讨厌我在顶部的一些代码,它以某种方式搞乱了print
- 我from __future__ import print_function
文件顶部的from __future__ import print_function
删除了一切,一切都开始顺利进行。
我看到你搞定了,但是这里的解释是:
Python 3因各种原因改变了打印的工作方式。 最大的变化是print
现在是一个函数而不是一个语句(这很有用,因为如果你想改变它打印到的地方,是否用换行符终止等等,它允许你传递参数给它。 )
所以,当你有这条线:
from __future__ import print_function
它使用的是Python 3打印,但您在Python 2中运行。一个解决方案(如您所见)是删除导入,但您也可以将print
语句更改为函数。 对于像这样的简单语句,你只需要添加parens,这样就可以了:
print("Favorited: %s" % (result['text']))
这些也有效:
print("Favorited: {}".format(result['text']))
print("Favorited:", result['text'])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.