gpt4 book ai didi

python - 格式化字符串时不理解 "IndexError: tuple index out of range"的原因

转载 作者:太空狗 更新时间:2023-10-30 00:38:30 24 4
gpt4 key购买 nike

我查看了具有此 IndexError 的类似问题,但没有找到对我的案例的解释。有人可以解释为什么我会收到错误消息吗?

下面的代码

mySF2[0]=['000browser', '1', 'Floor', '0.92', '1.74', 'con', 'None']

insertfmt = ' '.join([
"INSERT INTO mySchema.myTable_{}_name (col1, col2, col3, col4, col5, col6)",
"VALUES ({}, {}, NULLIF({},'None')::decimal, NULLIF({},'None')::decimal, {}, NULLIF({},'None')::int)"
])

insertfmt.format(mySF2[0])

给出这个错误

IndexError: tuple index out of range

但是,我计算了 7 个占位符(即花括号 {})和 7 个要输入的项目。那为什么会出错呢?

最佳答案

str.format() 接受与格式字符串中的“孔”数相对应的可变数量的参数。在您的情况下,您将单个参数(列表)传递给 .format(),这会导致错误,因为它需要七个参数。

要将数组作为单独的参数传递给函数,您需要像这样使用 * 运算符:

insertfmt.format(*mySF2[0])

关于python - 格式化字符串时不理解 "IndexError: tuple index out of range"的原因,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42705962/

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