为了账号安全,请及时绑定邮箱和手机立即绑定

PyCharm 中的“需要更多值来解压”警告

PyCharm 中的“需要更多值来解压”警告

素胚勾勒不出你 2023-12-29 10:29:46
只是一个奇怪的警告,到目前为止它似乎没有引起任何问题,但这是一个强烈的警告,我想摆脱它。所以我的代码中的这一行已被标记为存在此问题:ultrafines_min, ultrafines_max = self.ultra_fines_limits该属性self.ultra_fines_limits在代码的前面声明,并且来自另一个类中的查找:self.ultra_fines_limits = UltraFinesLimits.values()最后,这是 UltraFinesLimits 的类声明:class UltraFinesLimits(enum.Enum):    low_limit = 0    top_limit = 35    @classmethod    def values(cls) -> Tuple[int]:        return tuple(map(lambda c: c.value, [*cls]))正如您所看到的,values()方法旨在返回一个元组,它确实这样做了:(0, 35)Process finished with exit code 0所以我很困惑为什么会收到警告。是因为我的元组中可能有两个以上的值吗?
查看完整描述

1 回答

?
达令说

TA贡献1821条经验 获得超6个赞

最终,我会说是的 - 这就是你收到警告的原因。


Python 中的元组是一个 n 元组,而不是严格意义上的 2 元组。(参见https://docs.python.org/3/tutorial/datastructs.html#tuples-and-sequences)


我敢打赌这会清除警告:


ultrafines_min, ultrafines_max, _ = self.ultra_fines_limits

但更有用的是,您可能想查看 value() 函数,看看是否有更好的方法来打包最小值和最大值。在这种情况下,也许更明确更好?


@classmethod

def values(cls) -> Tuple[int]:

    return cls.low_limit, cls.top_limit


查看完整回答
反对 回复 2023-12-29
  • 1 回答
  • 0 关注
  • 47 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信