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

如何解决Spyder(Python2.7)中Flask生产环境警告及语法错误问题

解决Spyder中设置Flask环境变量的语法错误问题

你遇到的核心问题是把Shell终端的环境变量命令当成Python代码在Spyder里运行了——export是Linux/macOS终端的bash命令,不是Python语法,自然会报语法错误。下面给你两种可行的解决方案:

方法一:在Python代码中直接设置环境变量

在导入Dash/Flask相关库之前,用Python的os模块设置环境变量,代码运行时会自动加载这些配置。修改你的代码开头如下:

import os
# 设置Flask应用标识和开发环境
os.environ['FLASK_APP'] = 'yourapp'  # 这里替换成你的脚本文件名(比如脚本叫app.py就写'app')
os.environ['FLASK_ENV'] = 'development'

# 之后再导入你的其他库
import pandas as pd
import numpy as np
import pyodbc
import dash_html_components as html
import dash_core_components as dcc
from dash.dependencies import Input, Output, State
import dash

# 你的数据库连接和后续代码...
currconn = pyodbc.connect('Driver={SQL Server};Server=xxxx-dbs-xx.xx.xxxx.ca;Database=Anexample;UID=xx_xxxx;PWD=xxxxxxxxxxx')
currquery = "SELECT DISTINCT country FROM dbo.vw_regions"
currcursor = currconn.cursor()
currcursor.execute(currquery)

方法二:在Spyder中永久配置环境变量

如果你不想每次写代码都手动设置,可以在Spyder的偏好设置里添加环境变量,永久生效:

  • 点击Spyder顶部菜单栏的 Tools -> Preferences
  • 选择 Python interpreter 选项卡
  • 点击 Environment variables 按钮
  • 在弹出的窗口中,点击Add按钮,分别添加两个变量:
    • 变量名:FLASK_APP,变量值:yourapp(你的脚本文件名)
    • 变量名:FLASK_ENV,变量值:development
  • 保存设置后重启Spyder,再运行代码就不会出现生产环境警告了。

额外提醒

Python 2.7已经停止官方维护多年,Dash、Flask等主流库对Python2.7的兼容性越来越差,后续可能会遇到更多奇怪的问题。建议你尽快升级到Python 3.7及以上版本,能避免很多不必要的麻烦。

内容的提问来源于stack exchange,提问作者Yixuan Jiang

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 07:46:22