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



现在一切工作得很好,它返回错误

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()

三年过去了,那天早上我找到了问题的答案。那时,我对编程还是有点熟悉的。问题原来出在另一个模块中。我记得,有一个额外的字母a,所以python不想编译,整个代码不起作用。结论 仔细自觉地看

最新更新