Python 2.7中print语句语法错误排查:是否为版本兼容问题?
解决Python 2.7中print语句的SyntaxError问题
你遇到的这个语法错误确实是Python版本兼容导致的——Python 2.7里的print是一个语句,而不是Python3中的函数,所以直接在print后紧跟带.format()的表达式会触发语法错误。下面给你两种实用的修复方案:
方案1:使用Python 2原生的字符串格式化方式
换成Python2支持的%格式化语法,同时修正拼写细节(exists改为单数exist语义更准确),还要保证代码缩进正确:
if not os.path.exists(txt_fn): print 'text file %s does not exist' % txt_fn continue
方案2:启用Python3风格的print函数
在你的Python文件最顶部添加__future__导入,这样就能像Python3一样使用print()函数:
from __future__ import print_function
之后把代码调整为带括号的函数调用形式:
if not os.path.exists(txt_fn): print('text file {} does not exist'.format(txt_fn)) continue
另外提醒一句:continue只能在for或while循环内部使用,如果这段代码不在循环结构里,后续可能还会触发其他错误,记得检查代码上下文哦。
内容的提问来源于stack exchange,提问作者user9127040
相关产品推荐
相关产品推荐

