我从网站上抓取的列表有 6 个元素,for 循环也考虑了 6 个元素,但是当我尝试执行程序时,我得到一个 ValueError(预期为 6 个)。这真的让我和我感到困惑!希望比我聪明得多的人可以帮助我解决这个问题! 谢谢
"Data Source=ABC.PQR.GCXYZ.IT.SQL;Initial Catalog=DBName;User ID=User;Password=***;TrustServerCertificate=true",
答案 0 :(得分:0)
我真的不明白你为什么要在这里使用 for 循环?如果您想单独处理列表的每个元素,for 循环会很有用。 for a in list
为列表中的每个元素一个接一个地分配 a,第一次迭代时为 Total Revenue:
,第二次迭代时为 13,449.07
,依此类推。 for a,b in list
假设您的列表包含具有两个元素的列表。然而事实并非如此,因为您有一个简单的列表。
一种在这里更有用的变体:
for index,entry in enumerate(revenue):
worksheet.write(row, col + index, entry)
enumerate(list)
为您提供当前的索引和列表成员(因此您不需要硬编码 col+1
)并且您正确地迭代您的收入列表
您尝试做的是在单个 for 循环迭代中访问列表的每个元素。因此,您要么一个接一个地访问每个元素,如上所示,要么删除 for 循环并直接写入工作表:
worksheet.write(row, col, revenue[0])
worksheet.write(row, col + 1, revenue[1])
worksheet.write(row, col + 2, revenue[2])
worksheet.write(row, col + 3, revenue[3])
worksheet.write(row, col + 4, revenue[4])
worksheet.write(row, col + 5, revenue[5])
然而,这会非常不优雅