我了解public void onItemClick(AdapterView<?> l, View v, int position, long id) {
final Contact item = adapter.getItem(position);
SQLiteDatabase database = db.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("etat", 1);
database.update("contacts", values, "id=?", new String[] { String.valueOf(item.getId()) });
database.close();
}
块在退出块后自动调用with
,并且通常用于确保不会忘记关闭文件。
似乎
之间没有技术差异close()
和
with open(file, 'r+') as f:
do_things(f)
比其他方式更像Pythonic吗?我应该在我的代码中使用哪个?
答案 0 :(得分:3)
比其他方式更像Pythonic吗?
是的,首选的是with语句表单,它将文件管理逻辑封装在一行代码中。提高了业务逻辑与管理逻辑的比率,使程序更易于阅读和推理。
Per PEP 343,with语句的用途是:
This PEP adds a new statement "with" to the Python language to make
it possible to factor out standard uses of try/finally statements.