# 将结果写入Excel文件中 rows = [] for i, row in enumerate(dist): for j, value in enumerate(list(row)): # 将row转换为列表类型 rows.append({"起始节点": i, "终止节点": j, "最短路长度": value}) df_result = pd.DataFrame(rows) df_result.to_excel(r"C:\Users\li'yi'jie\Desktop\最短路径结果.xlsx", index=False)报错TypeError: 'numpy.int64' object is not iterable如何修改?
时间: 2024-02-17 20:01:41 浏览: 118
OpenCV中的cv::Mat函数将数据写入txt文件
这个错误提示是因为在使用`enumerate`函数的时候,其中的`row`是一个`numpy.int64`类型的对象,而这个对象是不可迭代的,所以会出现这个错误。可以通过将`row`转换为列表类型来解决这个问题,具体代码如下:
```
# 将结果写入Excel文件中
rows = []
for i, row in enumerate(dist):
for j, value in enumerate(list(row)): # 将row转换为列表类型
rows.append({"起始节点": i, "终止节点": j, "最短路长度": value})
df_result = pd.DataFrame(rows)
df_result.to_excel(r"C:\Users\li'yi'jie\Desktop\最短路径结果.xlsx", index=False)
```
这样就可以避免这个错误。
阅读全文