如何解决Python Sqlite3中insert()缺少1个必需的位置参数:'column_values'的问题?

57hvy0tb  于 2023-03-11  发布在  Python
关注(0)|答案(1)|浏览(127)

所有工作都很好,坏,现在它返回错误

def add_expense(raw_message):
    chat_id         = types.User.get_current().id
    parsed_message  = _parse_message(raw_message)
    category        = Categories().get_category(parsed_message.category_text)
    inserted_row_id = db.insert("expense", {"user_id": chat_id, 
    "amount": parsed_message.amount, "created": _get_now_formatted(),  
    "category_codename": category.codename, "raw_text": raw_message})

    return Expense(id=None, amount=parsed_message.amount, category_name=category.name)

'column_values'类型错误:insert()缺少1个必需的位置参数:
db.insert在别处定义为:

def insert(id,table, column_values): 
    columns = ', '.join( column_values.keys() )
    values = [tuple(column_values.values())]
    placeholders = ", ".join( "?" * len(column_values.keys()) )  
    cursor.executemany( f"INSERT INTO {table} "
                        f"({columns}) "
                        f"VALUES ({placeholders})", values)
    conn.commit()
gab6jxml

gab6jxml1#

三年过去了,那天早上我找到了问题的答案,当时我对编程还有点熟悉,问题原来出在另一个模块上,我记得多了一个字母a,所以python不想编译,整个代码都不行了,结论有意识地仔细看

相关问题