Python 烧瓶演示应用程序不工作

Python 烧瓶演示应用程序不工作,python,flask,werkzeug,Python,Flask,Werkzeug,我想尝试一下烧瓶最小的应用程序 from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello World!' if __name__ == '__main__': app.run() 它工作正常。如果我在run()之前添加app.debug=True,它将不起作用 错误是: Traceback (most recent call last):

我想尝试一下烧瓶最小的应用程序

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello World!'

if __name__ == '__main__':
    app.run()
它工作正常。如果我在
run()
之前添加
app.debug=True
,它将不起作用

错误是:

Traceback (most recent call last):
  File "app.py", line 10, in <module>
    app.run()
  File "C:\Python34\lib\site-packages\flask\app.py", line 772, in run
    run_simple(host, port, self, **options)
  File "C:\Python34\lib\site-packages\werkzeug\serving.py", line 666, in run_simple
    os.set_inheritable(s.fileno(), True)
OSError: [Errno 9] Bad file descriptor
回溯(最近一次呼叫最后一次):
文件“app.py”,第10行,在
app.run()
文件“C:\Python34\lib\site packages\flask\app.py”,第772行,正在运行
运行简单(主机、端口、自身,**选项)
文件“C:\Python34\lib\site packages\werkzeug\serving.py”,第666行,运行\u simple
os.set_可继承(s.fileno(),True)
OSError:[Errno 9]错误的文件描述符

我使用了Python 3.4.3、Flask 0.10.1、Werkzeug 0.11.1和Windows 10。使用或不使用virtualenv的行为是相同的。

我在使用Python 3.4.2的Windows 7上遇到了同样的问题。我最终不得不将Werkzeug的
版本从
0.11.1
降级到
0.10.4
。完全公开,我不是一名Python开发人员,因为我在日常工作中编写.NET,并且正在学习Python,所以我不能在这里完全解释原因。另外,我刚刚选择了一个版本,我去搜索“Werkzeug”。如果您不知道,pypi.python.org是pip安装的源代码;-)

为此,我卸载了Werkzeug,然后通过在
pip
中指定版本来重新安装它。这对我的全球环境和项目中的“virtualenv”都很有用

pip uninstall Werkzeug
pip install Werkzeug==0.10.4
编辑 这是我的
requirements.txt
文件的内容。您可以通过运行命令
pip install-r requirements.txt
,卸载已安装的所有不同软件包,并安装这些特定版本,前提是您的工作目录是requirements.txt所在的位置,并且您的virtualenv当前处于活动状态。在Windows中,如果需要,可以使用相对路径:-)


我也看到了。这似乎是在代码中设置的文件重新加载程序,但这是我得到的。这在我的电脑(MacBookPro)上工作。你能在虚拟机或其他计算机上试用吗?我用同样的程序和软件版本在另一台电脑上试用。结果是一样的。我在Windows10上。据我所知,即使在打开套接字时也会发生这种情况:
s=socket.socket()os.fstat(s.fileno())
在Windows 10上也存在同样的问题。尝试以管理员身份运行,未修复。在调试模式关闭的情况下运行它很好,但是将我的Werkzeug版本固定到0.10.4是可行的!非常感谢。我会看看我是否能找出导致这一变化的原因。看起来这个问题已经解决了:
itsdangerous==0.24
Werkzeug==0.10.4
WTForms==2.0.2
SQLAlchemy==1.0.9
MarkupSafe==0.23
Jinja2==2.8
Flask==0.10.1
Flask-SQLAlchemy==2.1
Flask-WTF==0.10