python isinstance函数的问题

list1=[1,2,3,[4,5,6]]
def print_list(list):
    for each in list:
        if isinstance(each,list):
            print_list(each)
        else:
            print(each)
                

运行的时候给出了如下的错误.
TypeError: isinstance() arg 2 must be a type or tuple of types

阅读 6.6k
2 个回答

大哥,你的形参名list和内置类型list重名了.所以此时的list不再是list类。而是一个局部变量名。

把你函数中的list改个名字,因为list是built-in 变量,是列表类型的引用

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题