我似乎无法看到这段代码有什么问题,但是当我运行脚本时,我得到了一个 IndentationError 。
import web
import json
urls = (
'/(.*)', 'handleRequest'
)
app = web.application(urls, globals())
class handleRequest:
def GET(self, method_id):
if not method_id:
return json.dumps({'ok':0})
else:
return json.dumps({'ok': method_id})
def POST(self):
i = web.input()
pass
if __name__ == "__main__":
app.run()
这是我尝试运行脚本时收到的控制台错误消息:
>>> def POST(self):
File "<stdin>", line 1
def POST(self):
^
IndentationError: unexpected indent
>>> i = web.input()
File "<stdin>", line 1
i = web.input()
^
我已经检查了缩进 - 我在整个文件中使用了相同的4个空格 - 我错过了什么?!
答案 0 :(得分:6)
您没有“运行脚本”,而是在REPL中键入它。将内容保存到文件并通过例如文件执行python somescript.py
。
答案 1 :(得分:5)
GET
的结尾与POST
的开头之间的行没有缩进。
当python正在执行文件但在输入REPL时(因为它看起来是这样),这应该没问题,python将空行作为类handleRequest
的结束
答案 2 :(得分:0)
您是否将其粘贴到交互式会话中?您的方法之间不能换行(空行告诉解释器该类已完成)