Python语法错误求助:raw_input代码中引号引发Invalid Syntax
解决Python随机问答代码的引号语法错误
Hey there! Let's sort out this syntax error you're hitting with your fun random quiz code.
问题根源
你遇到的这个指向引号的语法错误,核心原因大概率是Python版本不兼容:你写的是Python 2.x的语法,但现在应该是在用Python 3.x运行代码。
在Python 2中,print是一个语句,所以可以直接写print "字符串内容";但到了Python 3,print被改成了内置函数,必须用括号把输出内容包裹起来,也就是print("字符串内容")。如果不加括号,Python 3会把引号附近的内容判定为无效语法,正好对应你说的报错指向%s旁的闭合引号。
另外还要注意:Python 3里已经移除了raw_input()函数,它被重命名为input()——如果你用的是Python 3,原来的raw_input()调用也要改成input(),不然还会遇到新的报错。
修正后的代码
把你的报错代码行改成这样:
print(" Oh okay then %s . You came from %s , right? Oh i see you came here to %s" % (name, so, fun))
额外小提示
如果需要同时兼容Python 2和3,可以在代码文件的最顶部加上这行代码,让Python 2也能识别Python 3的print函数写法:
from __future__ import print_function
内容的提问来源于stack exchange,提问作者Marko
相关产品推荐
相关产品推荐

