我目前正在尝试对某个应用程序的python应用程序进行单元测试,但是对于涉及此代码块的所有测试,我仍然遇到上述错误。相同的代码可用于其他成员部件。
columns = ['id', 'column1', 'column2', 'column3', 'column4']
values = [(1, 33, 1, 1, 1)]
json = {columns[i]: values[i] for i in range(len(columns))}
在mysql中,如果可能会影响到它,则每一列都是int(11)。
答案 0 :(得分:2)
将values
更改为
values = (1, 33, 1, 1, 1)
或
json = {columns[i]: values[0][i] for i in range(len(columns))}
答案 1 :(得分:2)
您的values变量只有一个成员,该成员是5个int的列表!因此values[i]
不能超出值[0]
您可以像这样将value变量更改为5个int的列表:
values = [1, 33, 1, 1, 1]
或将其更改为5 int的元组,如下所示:
values = (1, 33, 1, 1, 1)
否则您就不能更改您的values变量并使它像这样发生:
json = {columns[i]: values[0][i] for i in range(len(columns))}
使用values[0][i]
,您将到达每个列表整数
您的IndexError可以解决!