BaseHttpServer类中的全局变量

2 投票
2 回答
2295 浏览
提问于 2025-04-18 17:47

我正在使用BaseHttpServer类中的'do_GET'方法。

我想要实现的是,连续调用这个方法时能够访问到同一个共享变量。

比如说,如果我先发送命令0,然后再发送命令1,我就无法访问到同一个变量了。

from BaseHTTPServer import BaseHTTPRequestHandler,HTTPServer
from threading import Thread

class myHandler(BaseHTTPRequestHandler):

    def do_GET(self):
        #Some code
        if comand == 0:
             self.task()
        elif comand = 1:            
            #AttributeError: myHandler instance has no attribute 'var'
            temp = self.var 
        return

    def task(self):
       #Ok no exception 
       self.var = 0

#Main
server = HTTPServer(('', 8080), myHandler)
server.serve_forever()

2 个回答

0

#

2

我通过创建一个静态类来解决这个问题,并在静态类中使用全局变量。

撰写回答