Wayneee 发表于 2021-5-15 16:06:13

python电梯

class Msg:
    msgDecode = [["关门", "开门", "有人进"], "去{}楼", "{}楼有人按上", "{}楼有人按下"]# 消息解码表

    def __init__(self, type_, value):
      self.type = type_
      self.value = value
      if type_ == 0:
            self.info = self.msgDecode
      else:
            self.info = self.msgDecode.format(value)
这几行代码什么意思呀,看不明白,尤其是 self.info = self.msgDecode,求大神解答

Twilight6 发表于 2021-5-15 17:07:17


masDecode 变量在 类内 方法外赋值,即属于 类变量,所有实例会共用这个属性

__init__ 方法设置传入参数与初始化实例变量

self.info = self.msgDecode 就是将 info 赋值为类变量 msgDecode 的第 0 个的第 value 个元素

即 msgDecode = ["关门", "开门", "有人进"] 的第 value,反之将 msgDecode 的第 type_ 个元素

即 ["去{}楼", "{}楼有人按上", "{}楼有人按下"] 这三个元素进行 format 格式化为 value 参数后的字符串,为你填入的 value 值

页: [1]
查看完整版本: python电梯