Google Colab中Lambda map函数报'list not callable'错误如何解决
报错原因
你当前的运行环境中,Python内置的list构造函数已经被你重定义为了一个列表类型的变量,才会触发'list' object is not callable错误。
你大概率在运行这段代码前,执行过类似list = [xxx,xxx]的赋值操作,此时原本指向内置列表构造函数的list标识符被覆盖为普通列表对象,后续再调用list(map(...))等价于尝试调用一个列表,自然会抛出不可调用的异常。
验证方法
- 在报错代码前新增一行代码
print(type(list)),正常未被覆盖的情况下输出应为<class 'type'>,如果已经被重定义会输出<class 'list'> - 直接执行
print(list),如果输出为具体的列表内容,即可确认list已被作为变量赋值
解决方式
- 临时修复:重启Google Colab的运行时,重置所有会话变量即可恢复
list的默认指向 - 长期规避:不要使用Python内置关键字、内置函数名(例如
list、str、int、dict、map等)作为自定义变量的命名
内容的提问来源于stack exchange,提问作者Randall
相关产品推荐
相关产品推荐

