我正在开发这个Python项目,我多次遇到这种情况,我想知道是否有更好的方法。避免额外的线路进行属性检查?
有一个类实例的列表。列表的一部分是空的(填写None
)。 以下是一个示例列表。
ins_list = [ins_1, ins_2, None, ins_3, None]
我必须在整个程序流程中做一些确认。有些地方需要控制这些实例的属性。但是从列表中选择一个实例只有索引,它可能是空的元素之一。当调用属性时会出现错误。这是一个示例程序流程。
ind = 2
if ins_list[ind].some_attribute == "thing":
# This would give error when empty element is selected.
我通过解决这个问题,
if ins_list[ind]:
if ins_list[ind].some_attribute == "thing":
# This works
我没关系使用此。然而,该计划是一个长期的计划,我应用了数百次。有没有更容易,更好的方式做到这一点,这意味着我正在生成缩进代码并无故增加缩进级别。我想知道是否有这样的解决方案。
'None'必须存在于我的程序列表中。该列表是一个预先确定的数据持有者,其元素被填满并清空。 –