《Python数据分析基础》笔记:“TypeError, 'int' object is not iterable”

学习《Python数据分析基础》第3章最后一个例子:为每个工作簿和工作表计算总数和均值时,在pandas 实现这个例子中的data 处出现报错
在这里插入图片描述
此处原例子没有添加str(),但是我运行是出现报错
TypeError, ‘int’ object is not iterable

在这里插入图片描述
找了半天没有解决,因为此处的

	data = {"workbook": os.path.basename(workbook),
            'worksheet': worksheet_name,
            "worksheet_total": total_sales,
            "worksheet_average": average_sales}

明显是一个dic格式,而

columns=['workbook', 'worksheet', 'worksheet_total', 'worksheet_average']

又是一个list格式,根本没有“int”object

但是报错一直过不了,只能一个一个的找,最后发现只有

data = {"workbook": os.path.basename(workbook),
        'worksheet': worksheet_name,
        "worksheet_total": total_sales,
        "worksheet_average": average_sales}

处的

"worksheet_total": str(total_sales),
        "worksheet_average": average_sales)}

存在"int"这样的数据结构,因而用str()强制字符串化
在这里插入图片描述
但是str()后又出现报错
在这里插入图片描述
需要索引,找到了博主August1226的文章《python – 解决If using all scalar values, you must pass an index问题》才解决了这个报错

在后面添加一个index = [0](ps:注意此处必须是[0],只是index = 0还是错的)

worksheet_data_frames.append(pd.DataFrame(data,
        columns=['workbook', 'worksheet', 'worksheet_total', 'worksheet_average'],index = [0]))

在这里插入图片描述
但是即使这样,还是存在excel 文件中格式不正常的

在这里插入图片描述

在这里插入图片描述
试图使用列表推导式过滤,但是没有成功,筛选掉一些文件后,可以的,但是结果似乎还是不对

在这里插入图片描述

等待后续解决!!!!!!!!!!!!!!!!

原创文章 62 获赞 29 访问量 7万+

猜你喜欢

转载自blog.csdn.net/python__reported/article/details/105798169