结果有多余的括号,我该如何删除它们python
?
我正在调用两种方法,其中一种返回字典的元组,第二种返回字典的元组列表。
print method_A() // ({'id': 6}, {'id': 9})
print method_B() // [({'id': 6}, {'id': 9})]
如何从第二种方法的结果中删除列表?
我尝试了类型检查,并进行了尝试,但是我想知道是否有任何简单的方法可以做到。
我尝试了以下代码:
resultA = method_A() // ({'id': 6}, {'id': 9})
resultB method_B() // [({'id': 6}, {'id': 9})]
if type(resultA) == list:
resultA = resultA[0]
if type(resultB) == list:
resultB = resultB[0]
或者我可以直接使用resultB [0]
如果这些方法之一始终返回带有tuple元素的列表,则只需使用索引:
resultA = method_A()
resultB = method_B()[0]
如果任何一个方法有时返回一个列表对象,有时仅返回一个元组,请使用一个函数:
def unwrap(v):
v[0] if isinstance(v, list) else v
并使用:
resultA = unwrap(method_A())
resultB = unwrap(method_B())
然后与创建这些方法的任何人联系,并就它们在API设计中的一致性进行严谨的交谈。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句