Python ValueError:值太多,无法解包4
我正在读取的文件正好有4列。我仍然得到下面的错误Python ValueError:值太多,无法解包4,python,Python,我正在读取的文件正好有4列。我仍然得到下面的错误 for n, row in spamreader: print('row') print('debug point 4') cur.execute('''INSERT INTO table(col1,col2,col3,col4)values (%s,%s,%s,%s)''',row) if n % 2 == 0: connect.commit() connect.commit() 试一试 对于
for n, row in spamreader:
print('row')
print('debug point 4')
cur.execute('''INSERT INTO table(col1,col2,col3,col4)values (%s,%s,%s,%s)''',row)
if n % 2 == 0:
connect.commit()
connect.commit()
试一试
对于熊猫数据帧,必须使用df.iterrows:
n将是您的索引。在行内
您可以访问诸如row['column\u name']之类的数据。问题是,当您在spamreader上迭代时,您需要两个变量- n-根据代码的其余部分,可能是行号 行-行本身 要获得行号,您实际上需要做的是-
for n, row in spamreader.iterrows():
假设spamreader读取行,因为当前未给出spamreader的预期定义,这应该可以完成此工作
请参阅有关使用enumerate的详细信息。spamreader是如何定义的?我建议您在enumeratespamreader中查找n,row:对于长度为2的每个迭代元组,您需要两个值n,row,但是还有更多的值。谢谢。它起作用了。但是insert语句永远不会结束,有什么线索吗?
for n, row in spamreader.iterrows():
for n, row in enumerate(spamreader):