python - 如何使用Python从列表中插入多行
问题描述
我试图弄清楚如何将多行插入python,但出现错误:
TypeError: ('Params must be in a list, tuple, or Row', 'HY000')
for folderName in os.listdir(parentDirectory):
for fileName in os.listdir(parentDirectory+'/'+folderName+'/'+'people'):
if os.path.splitext(fileName)[-1].lower()== '.xml':
filePath = parentDirectory+'/'+folderName+'/'+'people'+'/'+fileName
print(filePath)
tree = ET.parse(filePath)
valuesToInsert.append("('" + fileName + "','" +tree.find('PNumber').text+ "','" +tree.find('PNumber2').text+ "')")
numberOfProcessedFiles += 1
if numberOfProcessedFiles%1000 == 0:
print(*valuesToInsert, sep = "\n")
cursor.executemany('''
insert into t02.m.PNumbers
values
(?,?,?)
''',valuesToInsert)
conn.commit()
valuesToInsert.clear()
解决方案
不要附加字符串,只需附加一个元组:
valuesToInsert.append((fileName,tree.find('PNumber').text,tree.find('PNumber2').text))
推荐阅读
- reactjs - 如果在另一个库中重新导出 NPM 包组件会报错
- javascript - 如何通过javascript从html页面中的特定github txt文件中获取数据
- python - 在不使用python中的库函数的情况下将字符串转换为int或double
- bash - 在作为后台进程启动时处理 bash 脚本中的信号
- reactjs - 创建项目时未获得完整的项目数组。它只返回项目的名称
- facebook - 删除某些评论时的 Facebook 应用程序权限问题
- python - 检查两列的值是否相同,然后在其中一列中填充 nan
- java - 无法在外部存储中创建文件夹,Android
- flutter - Flutter:如何为 ToggleButtons 的每个按钮着色
- java - 用户生成内容的 Thymeleaf 十进制格式选项