回溯错误和键错误,似乎不能得到这个工作。有什么想法吗?

2024-06-30 08:19:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图让下面的代码工作,通过从csv文件提取信息到sqlite数据库,当我试图执行时,我不断得到这个关键错误。你知道吗

Traceback (most recent call last):
  File "test.py", line 10, in <module>
    to_db = [(i['iddd'], i['Country'], i['StateCode']) for i in dr]
KeyError: 'iddd'

我的代码:

import csv, sqlite3

con = sqlite3.connect('Movies.db')
cur = con.cursor()  
cur.execute('DROP TABLE IF EXISTS Info;')
cur.execute("CREATE TABLE Info(iddd INT PRIMARY KEY, Country INT, StateCode TEXT);")

with open('practice1.csv', 'rU') as fin:
    dr = csv.DictReader(fin)
    to_db = [(i['iddd'], i['Country'], i['StateCode']) for i in dr]

cur.executemany("INSERT INTO Info (iddd, Country, StateCode) VALUES (?, ?, ?);", to_db)
con.commit()`

Tags: csvto代码ininfoforexecutedb