为何Python Flask代码中if __name__ == "__main__":行报无效语法错误?
解决
if __name__ == "__main__":的语法错误提示 报错的实际原因不是这行代码本身,而是前面的renderIndexPage函数体为空,违反了Python语法规则——函数必须包含至少一条可执行语句(哪怕是占位的pass)。Python解释器在解析到空函数体时,会触发语法解析异常,报错位置可能会误指向后续的if语句行。
修复方案:
- 若要实现首页渲染,给函数补充返回语句:
return render_template('index.html')(需确保项目根目录下有templates文件夹及对应的index.html文件) - 若仅作为占位,添加
pass语句
修复后的完整代码:
from flask import Flask, render_template, request import json app = Flask("Web Translator") @app.route("/englishToFrench") def englishToFrench(): textToTranslate = request.args.get('textToTranslate') # Write your code here return "Translated text to French" @app.route("/frenchToEnglish") def frenchToEnglish(): textToTranslate = request.args.get('textToTranslate') # Write your code here return "Translated text to English" @app.route("/") def renderIndexPage(): # 渲染首页模板 return render_template('index.html') # 或临时占位: # pass if __name__ == "__main__": app.run(host="0.0.0.0", port=8080)
内容的提问来源于stack exchange,提问作者Sarah Pinheiro
相关产品推荐
相关产品推荐

