-1

完整脚本:

import pprint

def application(environ, start_response):
    start_response('200 OK', [('content-type', 'text/html')])
    aaa = ['a','b','c']
    pprint.pprint(aaa)

如果我要在终端中运行它,那将是......

>>> import pprint
>>> aaa = ['a','b','c']
>>> pprint.pprint(aaa)
['a', 'b', 'c']
>>> 

如您所见,它工作正常。但是通过 wsgi-script 它不起作用。

错误日志:

TypeError:“NoneType”对象不可迭代

顺便说一句,“pprint”是 PHP 中的“print_r()”等价物吗?

4

1 回答 1

9

WSGI要求您将要发送浏览器的输出作为函数的返回值返回,而不仅仅是打印出来。所以你需要使用它的结果,pprint.pformat()return不是pprint.pprint(它只是试图通过打印出来print- 而不是你想要的)。

def application(environ, start_response):
    start_response('200 OK', [('content-type', 'text/html')])
    aaa = ['a','b','c']
    return pprint.pformat(aaa)
于 2013-08-04T19:36:51.427 回答