0

我正在尝试创建一个包含 4 列的漂亮表。我试图每行插入的信息位于不同的 python 字典中。我会假设下面的代码可以工作,但我收到下面的错误

Exception: Row has incorrect number of values, (actual) 2!=4 (expected)

我的代码是:

t = PrettyTable(['key', 'Start', 'End', 'Retention'])

for key, val in total.items():
    t.add_row([key, val])

for key, val in dic.items():
    t.add_row([key, val])

print(t)
4

2 回答 2

0

如果您想同时使用 thetotaldic字典中的值,您可以使用zip它来成对地迭代它们:

table = PrettyTable(['key', 'Start', 'End', 'Retention'])

for col_1_2, col_3_4 in zip(total.items(), dic.items()):
    table.add_row([*col_1_2, *col_3_4])
于 2017-11-01T19:38:50.920 回答
0

您的表期望每行有 4 个值,而您只输入两个值,这就是您收到错误的原因,所以试试这个

 for (k,v), (k2,v2) in zip(total.items(), dic.items()):
        t.add_row([k, v, k2, v2])
于 2017-11-01T19:40:00.347 回答