2017-02-25 3 views
1

私は、トルネードを使って簡単なローカルWebサイトを作成しようとしています。これを実行してhttp://localhost:8888に行くと、次のエラーが表示されます。このサイトに接続できないlocalhostに接続できません。私はまだPythonの初心者ですので、どんな助けでも大歓迎です。私のコードは以下の通りです。Python 3 Tornado website

import tornado.ioloop 
import tornado.web 

class MainHandler(tornado.web.RequestHandler): 
    def get(self): 
     self.write("<!DOCTYPE html><head><title>" + "Hello world</title></head>" + "<body>Hello World</body>") 

    if __name__ == "__main__": 
     application = tornado.web.Application([(r"/", MainHandler), 
               ],) 
     application.listen(8888) 
     tornado.ioloop.IOLOOP.instance().start() 

答えて

1

IOLOOPIOLoopする必要があります:あなたは正しくコードをインデントする必要が

tornado.ioloop.IOLoop.instance().start() 
#    ^^^^^ 


UPDATE。特にif __name__ == "__main__":部分、その部分はclass ..定義の外にする必要があります:

if __name__ == "__main__": # <---- 
    application = tornado.web.Application([(r"/", MainHandler), 
              ],) 
    application.listen(8888) 
    tornado.ioloop.IOLoop.instance().start() 
+0

は、応答をありがとうございました。あなたが指摘した問題を解決しましたが、私はまだ同じエラーがあります。これがうまくいかない他の理由を知っていますか? – ralpher01

+0

@ ralpher01、ファイアウォールソフトウェアを実行していますか?設定を確認し、8888ポートまたはPythonプロセスをブロックしないようにしてください。 – falsetru

+0

私はラズベリーパイモデル3でこれをやっており、iptablesは無効になっています。 – ralpher01