gpt4 book ai didi

python - 使用表格时出错 "TypeError: ' int' 对象不可迭代”

转载 作者:行者123 更新时间:2023-12-04 09:02:21 30 4
gpt4 key购买 nike

所以,我在我的最新项目中使用表格来格式化我的数据。但是,它不断出现此错误,我无法理解其背后的原因。这是代码:

   from datetime import date
from tabulate import tabulate
records = []
sno = [0,1]
jades = [0,1]
events = ['0',1]
dates = ['0',1]
for i in range(0, len(jades)):
records.append([sno[i], jades[i], events[i], dates[i]])

print(records)
record = records[-1]
print(record)
print(tabulate(record, headers=["Sno.", "Jades", "Event", "Date"], tablefmt='simple'))
这是输出:
[[0, 0, '0', '0'], [1, 1, 1, 1]]
[1, 1, 1, 1]
Traceback (most recent call last):
File "/home/kartik/Desktop/discord-bot/Rem.py", line 16, in <module>
print(tabulate(record, headers=["Sno.", "Jades", "Event", "Date"], tablefmt='simple'))
File "/home/kartik/.local/lib/python3.8/site-packages/tabulate.py", line 1426, in tabulate
list_of_lists, headers = _normalize_tabular_data(
File "/home/kartik/.local/lib/python3.8/site-packages/tabulate.py", line 1103, in _normalize_tabular_data
rows = list(map(list, rows))
TypeError: 'int' object is not iterable
请注意,我发布的代码只是我发现导致错误的部分。这些行号可能不同。
我试图弄清楚自己,但我唯一能想到的是这个代码:
record = [records[-1]] 
我将最后的记录转换成它自己的列表。
请帮助我理解其背后的原因。我是 python 的初学者,所以我的问题可能很愚蠢。
先感谢您!

最佳答案

根据documentation ,要制表的第一个参数是可迭代对象或类似对象的可迭代对象,例如电子表格。您需要行和列。您传入的只是一个列表,因此在内部,它首先获取第一个元素(在您的情况下为“1”),将其视为一行,然后尝试遍历每一列,这是引发异常的地方.
当您将其包装在另一组括号中时,例如:

record = [records[-1]] 
那么你实际上拥有 [[1, 1, 1, 1]] ,这是一行(外括号)包含四列(内括号)。
我从未使用过这个库,所以我可能在这里切换了行/列,但概念是一样的。

关于python - 使用表格时出错 "TypeError: ' int' 对象不可迭代”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63538120/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com