Python模块全局变量

2021-01-28 07:36:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我有下面的代码,但我想把它转换成模块。 显然,如果我将此代码作为模块ser_rser导入,将永远不会初始化Agent类。在

#module.py

class Agent:
    def __init__(self, a, b, c):
        self.a = a
        self.b = b
        self.c = c

    def send(self, data):
        message = data + ' ' + a
        ser.write(message)

ser_r = serial.Serial(
                    port='COM6',
                    baudrate=500000,
                    parity=serial.PARITY_NONE,
                    stopbits=serial.STOPBITS_ONE,
                    bytesize=serial.EIGHTBITS
                    )

ser = io.TextIOWrapper(io.BufferedRWPair(self.ser_raw, self.ser_raw, 1),
                   newline='\r',
                   line_buffering=True)

所以我想到了创建一个类Serial,它有ser变量,然后在Agent类中使用。在

但是现在有另一个问题:如何在不创建Serial的情况下访问Serial内部的Serial?用户可以创建一个Serial实例,但是我不知道应该在Agent中使用的名称。我可以创建init方法,然后在里面创建Serial类。导入后,用户将调用init方法,然后就可以使用它了。在

^{2}$