Python获取';sqlite3.OperationalError:表感知已存在';到目前为止我的代码

Python获取';sqlite3.OperationalError:表感知已存在';到目前为止我的代码,python,sqlite,Python,Sqlite,“不了解该表是如何存在的” “代码错误令人困惑” “当我运行代码时,它看起来像这样‘创建降水量(“weather.db”,open(“premission.txt”)”def创建降水量(db,data\u文件): 到目前为止,我已经完成了这项工作,离工作越来越近了。我还没有完成,不知道下一步要做什么欢迎这样做!您可能首先要检查问题的格式并修复它,方法是点击问题文本下方的编辑按钮。在进行操作时,您可能需要添加一些解释您遇到的问题:)[以及您试图解决的问题]嗯,您不希望每次执行插入操作时都创建表。因

“不了解该表是如何存在的” “代码错误令人困惑” “当我运行代码时,它看起来像这样‘创建降水量(“weather.db”,open(“premission.txt”)”

def创建降水量(db,data\u文件):


到目前为止,我已经完成了这项工作,离工作越来越近了。我还没有完成,不知道下一步要做什么

欢迎这样做!您可能首先要检查问题的格式并修复它,方法是点击问题文本下方的
编辑
按钮。在进行操作时,您可能需要添加一些解释您遇到的问题:)[以及您试图解决的问题]嗯,您不希望每次执行
插入操作时都创建表。因此,您可以使用以下命令指定仅在表不存在时创建表:
如果表不存在,则创建表…
^我想这样行。我已经看过了,我会试一试的,谢谢
def create_precipitation(db, data_file):
    """(str, reader) -> NoneType
    Populate the database db with the contents of data_file.
    Create a table called Precipitation, with four columns: City
    (text), Snow (real), Total (integer), Days (integer).

    Parameters:

    db: name/path to a database

    data_file: contains one city, snowfall amount, total
    precipitation amount, and number of days per line, separated by
    comma.
    """  
    conn = sqlite3.connect(db)
    cur = conn.cursor()
    cur.execute('create table precipitation' +
                '(city text, snow real, ' +
                'Total integer, Days integer)')
    for line in data_file:
        values = line.strip().split(',')
        city = values[0]
        snow = float(values [1])
        total = int(values[2])
        days = int(values[3])
        cur.exectue("insert into percipitation values (?,?,?,?)",
                    (city, snow, total, days))
    conn.commit()
    cur.close
    conn.close()
conn = sqlite3.connect(db)
cur = conn.cursor()
cur.execute('drop table if exists precipitation')
cur.execute('create table precipitation' +
            '(city text, snow real, ' +
            'Total integer, Days integer)')
for line in data_file:
    values = line.strip().split(',')
    city = values[0]
    snow = float(values[1])
    total = int(values[2])
    days = int(values[3])
cur.execute("insert into precipitation values (?,?,?,?)",
            (city, snow, total, days))
conn.commit()
cur.close
conn.close()