只是一个奇怪的警告,到目前为止,它似乎没有引起任何问题,但它是一个强烈的警告,我想摆脱它
因此,我的代码中的这一行标记了以下问题:
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
所以我不明白为什么我会得到警告。是因为元组中可能有两个以上的值吗
最终,我会说是的——这就是为什么你会得到警告
Python中的元组是n元组,而不是严格意义上的2元组。 (见https://docs.python.org/3/tutorial/datastructures.html#tuples-and-sequences)
我敢打赌,这将消除警告:
但更有用的是,您可能希望查看value()函数,看看是否有更好的方法来打包min&;最大值。 在这种情况下,也许更明确一些更好
相关问题 更多 >
编程相关推荐