2012-12-24 81 views
1

我使用Tornado framework並且有一個Websockethandler,它接收來自客戶端的數據並將該值存儲在變量中。我怎樣才能發送該變量到另一個模塊。這是代碼(部分):將Tornado類中的變量導出到另一個模塊

#module a.py 

class Handler(tornado.websocket.WebSocketHandler):  
    @tornado.web.asynchronous 
    @gen.engine 

    def on_message(self, event): 
     data = urlparse.parse_qs(event) 
     event= data.get('type') 

如何變event被傳遞到模塊b.py

感謝

+0

你爲什麼要這麼做? –

+0

@NikolayFominyh;我想將'event'的值傳遞給另一個與第三方交互的模塊作爲參數。 – user1869421

回答

3

使模塊b.py的功能,例如on_message,並通過它您event變量:

b.py

def handle_event(new_event): 
    print new_event 

a.py

import b 

class Handler(tornado.websocket.WebSocketHandler):  
    @tornado.web.asynchronous 
    @gen.engine 

    def on_message(self, event): 
     data = urlparse.parse_qs(event) 
     event= data.get('type') 
     b.handle_message(event) # this 
+0

謝謝,我會給它一個去讓你知道我是怎麼做的。 – user1869421

+0

你可以「導出一個變量」使其成爲全局的,但這是一個壞主意(反模式 - 搜索SO「全局變量」) – warvariuc

+0

我試過以下內容。但是,說'on_message(event)'只是輸出參數'event',那麼我怎樣才能讓它在模塊'b.py'中打印? – user1869421

相關問題