我正在编写一个python def,它将采用任一类型的输入参数:[(元组列表)]或[[列表列表]],这将导致不同的处理方法.看起来他们都有'list'()的类型.如何区分用户可能输入的这两种不同类型的数据?
谢谢.
获取列表中第一个项目的类型.
if isinstance(x, list) and len(x) != 0:
if isinstance(x[0], list):
# Do stuff for list of lists
elif isinstance(x[0], tuple):
# Do stuff for list of tuples
Run Code Online (Sandbox Code Playgroud)
当然,确保x是a list并且它中有一个项目.
此外,如果您获得包含混合列表和元组的列表,则会出现故障.稍后进行区分可能会更好,如果可以的话,在两种情况下都将包含列表视为相同.否则,您需要检查列表中的每个项目.