【发布时间】:2012-07-23 12:24:08
【问题描述】:
好的,所以我有一个包含三个值的元组列表(code, value, unit)
当我要使用它时,我需要检查一个值是一个 str、一个列表还是一个矩阵。 (或检查是否列表,然后再次检查是否列表)
我的问题只是我应该这样做,还是有更好的方法?
for code, value, unit in tuples:
if isinstance(value, str):
# Do for this item
elif isinstance(value, collections.Iterable):
# Do for each item
for x in value:
if isinstance(x, str):
# Do for this item
elif isinstance(x, collections.Iterable):
# Do for each item
for x in value:
# ...
else:
raise Exception
else:
raise Exception
【问题讨论】:
-
外部
for循环的主体相当混乱。第一行不应该有x而不是value吗?内部循环不应该是for y in x吗?
标签: python instance dynamic-typing