Python3.7執行web.py測試時出現RuntimeError: generator raised StopIteration異常
阿新 • • 發佈:2018-12-12
剛開始學習python,在執行web.py首頁測試程式碼的時候出現異常。
程式碼如下:
import web urls = ( '/(.*)', 'hello' ) app = web.application(urls, globals()) class hello: def GET(self, name): if not name: name = 'World' return 'Hello, ' + name + '!' if __name__ == "__main__": app.run()
出現的異常如下:
Traceback (most recent call last): File "C:\Users\HHHHH\AppData\Local\Programs\Python\Python37-32\lib\site-packages\web\utils.py", line 526, in take yield next(seq) StopIteration The above exception was the direct cause of the following exception: Traceback (most recent call last): File "D:\workspace\HelloPython\Helloworld.py", line 7, in <module> app = web.application(urls, globals()) File "C:\Users\HHHHH\AppData\Local\Programs\Python\Python37-32\lib\site-packages\web\application.py", line 62, in __init__ self.init_mapping(mapping) File "C:\Users\HHHHH\AppData\Local\Programs\Python\Python37-32\lib\site-packages\web\application.py", line 130, in init_mapping self.mapping = list(utils.group(mapping, 2)) File "C:\Users\HHHHH\AppData\Local\Programs\Python\Python37-32\lib\site-packages\web\utils.py", line 531, in group x = list(take(seq, size)) RuntimeError: generator raised StopIteration
根據異常提示以找到相應的程式碼(...utils.py", line 531, in group),如下:
此處呼叫524行take方法,根據官網資料修改如下(注意縮排):
修改完成後重啟,成功:
END