Python实现Sqlite将字段当做索引进行查询的方法


Posted in Python onJuly 21, 2016

本文实例讲述了Python实现Sqlite将字段当做索引进行查询的方法。分享给大家供大家参考,具体如下:

默认从sqlite中获取到的数据是数字索引的, 在开发阶段经常有修改数据库所以显得不太方便, 其实在python源码里就有解决方案, 直接读sqlite3的源码, 摸索了一些, 解决方案如下:

默认连接的话使用一下代码是以数字为索引的:

conn = sqlite3.connect(dbfile)
cur = conn.cursor()

为了使得获取到的结果集以字段为索引, 需要添加一个函数和一个类:

def dict_factory(cursor, row):
  d = {}
  for idx, col in enumerate(cursor.description):
    d[col[0]] = row[idx]
  return d
class MyCursor(sqlite3.Cursor):
  def __init__(self, *args, **kwargs):
    sqlite3.Cursor.__init__(self, *args, **kwargs)
    self.row_factory = dict_factory

然后修改连接的代码:

conn = sqlite3.connect(dbfile)
cur = conn.cursor(factory=MyCursor)

之后读取出来的便是以字段为索引的了.

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python while 循环使用的简单实例
Jun 08 Python
pandas对指定列进行填充的方法
Apr 11 Python
Win10下python 2.7.13 安装配置方法图文教程
Sep 18 Python
对Python+opencv将图片生成视频的实例详解
Jan 08 Python
Python实现二叉树前序、中序、后序及层次遍历示例代码
May 18 Python
在Python中过滤Windows文件名中的非法字符方法
Jun 10 Python
Django的用户模块与权限系统的示例代码
Jul 24 Python
简单了解python中的与或非运算
Sep 18 Python
解决Keras 与 Tensorflow 版本之间的兼容性问题
Feb 07 Python
Python如何定义接口和抽象类
Jul 28 Python
python实现ping命令小程序
Dec 28 Python
Python关于OS文件目录处理的实例分享
May 23 Python
python装饰器初探(推荐)
Jul 21 #Python
python魔法方法-自定义序列详解
Jul 21 #Python
浅谈Python 字符串格式化输出(format/printf)
Jul 21 #Python
分享python数据统计的一些小技巧
Jul 21 #Python
python中print的不换行即时输出的快速解决方法
Jul 20 #Python
Python全局变量用法实例分析
Jul 19 #Python
python对象及面向对象技术详解
Jul 19 #Python
You might like
模拟OICQ的实现思路和核心程序(三)
2006/10/09 PHP
WordPress中给媒体文件添加分类和标签的PHP功能实现
2015/12/31 PHP
weiphp微信公众平台授权设置
2016/01/04 PHP
PHP 接入微信扫码支付总结(总结篇)
2016/11/03 PHP
Yii框架函数简单用法分析
2019/09/09 PHP
jquery JSON的解析方式
2009/07/25 Javascript
自制轻量级仿jQuery.boxy对话框插件代码
2010/10/26 Javascript
用Juery网页选项卡实现代码
2011/06/13 Javascript
jQuery.get、jQuery.getJSON、jQuery.post无法返回JSON问题的解决方法
2011/07/28 Javascript
JS 操作符整理[推荐收藏]
2011/11/15 Javascript
jQuery Validate 验证,校验规则写在控件中的具体实例
2014/02/27 Javascript
javascript操纵OGNL标签示例代码
2014/06/16 Javascript
javascript 10进制和62进制的相互转换
2014/07/31 Javascript
jQuery支持添加事件的日历特效代码分享(3种样式)
2015/08/24 Javascript
jquery实现简单的二级导航下拉菜单效果
2015/09/07 Javascript
简单实现js菜单栏切换效果
2017/03/04 Javascript
详解如何提高 webpack 构建 Vue 项目的速度
2017/07/03 Javascript
写给vue新手们的vue渲染页面教程
2017/09/01 Javascript
JavaScript算法学习之冒泡排序和选择排序
2019/11/02 Javascript
vue element和nuxt的使用技巧分享
2021/01/14 Vue.js
[32:47]完美世界DOTA2联赛 GXR vs IO 第二场 11.07
2020/11/09 DOTA
python爬虫框架scrapy实战之爬取京东商城进阶篇
2017/04/24 Python
python石头剪刀布小游戏(三局两胜制)
2021/01/20 Python
python的等深分箱实例
2019/11/22 Python
Python字符串中删除特定字符的方法
2020/01/15 Python
python如何判断IP地址合法性
2020/04/05 Python
CSS3中几个新增加的盒模型属性使用教程
2016/03/01 HTML / CSS
用html5实现语音搜索框的方法
2014/03/18 HTML / CSS
Melissa鞋英国官方网站:Nonnon
2019/05/01 全球购物
别名指示符是什么
2012/10/08 面试题
初中考试作弊检讨书
2014/02/01 职场文书
听课评语大全
2014/04/30 职场文书
超市开业庆典策划方案
2014/05/14 职场文书
物业保洁员岗位职责
2015/02/13 职场文书
MySQL非空约束(not null)案例讲解
2021/08/23 MySQL
如何更改Win11声音输出设备?Win11声音输出设备四种更改方法
2022/04/08 数码科技