'list' object has no attribute 'nlevels'
时间: 2023-08-04 16:05:45 浏览: 195
引用[1]:此段代码会报错AttributeError: ‘list’ object has no attribute 'split’原因是ls=tf.readlines()它读取的是文件中的所有行,以每行为元素形成一个列表 。 引用[2]:AttributeError: 'list' object has no attribute 'size'解决办法 问题描述解决办法 问题描述 在用torchsummary打印模型结构的时候报错,AttributeError: ‘list’ object has no attribute ‘size’。 解决办法 找到E:\program\anaconda\envs\dai\Lib\site-packages\torchsummary\torchsummary.py文件。 在第19行找到summary[m_key]["input_shape"] = list(input[0].size()) 将这一句改成: if isinstance(input[0], torch.tensor): summary[m_key]["input_shape"] = list(input[0].size()) elif isinstance(input[0], list): summary[m_key]["input_shape"] = list(np.array(input[0].size())) 原因是:要赋给summary的值是list的形式,即[batch_size,channel,height,width],如果是torch.Tensor的话,按照源码这样写;如果是list类型的话,那就先将他转成numpy.array形式,因为数组是有shape属性。 #修改前 summary[m_key]["input_shape"] = list(input[0].size()) #修改后 if isinstance(input[0], torch.Tensor): summary[m_key]["input_shape"] = list(input[0].size()) elif isinstance(input[0], list): summary[m_key]["input_shape"] = list(np.array(input[0]).shape) 成功!。 引用[3]: ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=cm.viridis) File "F:\Program Files\Python\Python36\lib\site-packages\mpl_toolkits\mplot3d\axes3d.py", line 1635, in plot_surface if Z.ndim != 2: AttributeError: 'list' object has no attribute 'ndim' 。 问题: 'list' object has no attribute 'nlevels'
回答: 报错信息"'list' object has no attribute 'nlevels'"是因为列表对象没有'nlevels'属性。[3]这个错误可能是由于在使用某个函数或方法时,错误地将列表对象传递给了该函数或方法,而该函数或方法期望的是具有'nlevels'属性的对象。要解决这个问题,你需要检查你的代码,确保你正确地使用了函数或方法,并传递了正确的对象类型。
阅读全文