You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 09:49:56