在SQLite-Python中实现返回、查询中文字段的方法
博主在这个问题上卡了挺久的,贴出来解决方法帮助需要的朋友,直接上代码(测试环境:win10+Python2.7):
# coding=utf-8 import sqlite3 with sqlite3.connect(":memory:") as conn: try: init_sql = " create table test (id integer primary key ,name text(200) not null);" \ " insert into test (name) values ('小居居');" \ " insert into test (name) values ('大居居');" conn.executescript(init_sql) except Exception as e: conn.rollback() raise e else: conn.commit() conn.text_factory = str # 此处是关键,sqlite默认文本存取是Unicode try: for row in conn.execute(" select * from test where name = ?",("大居居",)): print row[1],type(row[1]) except Exception as e: raise e
结果:
大居居 <type 'str'>
以上这篇在SQLite-Python中实现返回、查询中文字段的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
Python Sqlite3以字典形式返回查询结果的实现方法
sqlite3本身并没有像pymysql一样原生提供字典形式的游标. cursor = conn.cursor(pymysql.cursors.DictCursor) 但官方文档里已经有预留了相应的实现方案. def dict_factory(cursor, row): d = {} for idx, col in enumerate(cursor.description): d[col[0]] = row[idx] return d 使用这个函数代替conn.raw_factory属性即可.
-
Python实现Sqlite将字段当做索引进行查询的方法
本文实例讲述了Python实现Sqlite将字段当做索引进行查询的方法.分享给大家供大家参考,具体如下: 默认从sqlite中获取到的数据是数字索引的, 在开发阶段经常有修改数据库所以显得不太方便, 其实在python源码里就有解决方案, 直接读sqlite3的源码, 摸索了一些, 解决方案如下: 默认连接的话使用一下代码是以数字为索引的: conn = sqlite3.connect(dbfile) cur = conn.cursor() 为了使得获取到的结果集以字段为索引, 需要添加一个函数
-
Python获取SQLite查询结果表列名的方法
本文实例讲述了Python获取SQLite查询结果表列名的方法.分享给大家供大家参考,具体如下: 获得查询结果表的列名: db = sqlite.connect('data.db') cur = db.cursor() cur.execute("select * from table") col_name_list = [tuple[0] for tuple in cur.description] print col_name_list 获得所有列名: cur.execute(&quo
-
python查询sqlite数据表的方法
本文实例讲述了python查询sqlite数据表的方法.分享给大家供大家参考.具体实现方法如下: import sqlite3 as db conn = db.connect('mytest.db') conn.row_factory = db.Row cursor = conn.cursor() cursor.execute("select * from person") rows = cursor.fetchall() for row in rows: print("%s
-
在SQLite-Python中实现返回、查询中文字段的方法
博主在这个问题上卡了挺久的,贴出来解决方法帮助需要的朋友,直接上代码(测试环境:win10+Python2.7): # coding=utf-8 import sqlite3 with sqlite3.connect(":memory:") as conn: try: init_sql = " create table test (id integer primary key ,name text(200) not null);" \ " insert i
-
如何彻底解决Python中matplotlib不显示中文的问题详解(显示方框)
目录 前言 方法一: 方法二: 总结 前言 在很长一段时间里用Python绘图,matplotlib都不能很好的显示中文,起初是认为我的pycharm里的设置问题,但是发现同样的问题在spyder里也同样的出现了,虽然有的地方可以用英文实在不行用拼音...但是在作图这里没有中文真的是太不方便了,机缘巧合下在年前终于找到问题的根源了,于是乎爱刨根问底儿的我把整个过程的解决方法分享给大家~~ 一共有两种解决方案,我强烈推荐第一种,因为更为方便,绘图时不用再写别的参数,调用一次即可,第二种方法也会写出
-
解决python中使用PYQT时中文乱码问题
如题,解决Python中用PyQt时中文乱码问题的解决方法: 在中文字符串前面加上u,如u'你好,世界',其他网上的方法没有多去探究,Python的版本也会影响解决方法,故这里只推荐这种. (有人说用toLocal8bit函数也可以,我试了下,貌似不行)请看例子: #coding=utf-8 from PyQt4 import QtGui, QtCore s = QtCore.QString(u'你好(hello)世界(world)') t = s.toLocal8Bit() u = unico
-
python中使用print输出中文的方法
看Python简明教程,学习使用print打印字符串,试了下打印中文,不行. 编辑环境:IDLE 上网搜了下解决办法,各种说法,试了两种: print u"学习" print (unicode("学习", encoding="utf-8")) 保存时均还是会提示 shell输出: ѧϰ ѧϰ 说明第二种还是有编码但还是不对. 最后,加上最前面一行就好了,虽然现在还不明白第一行为什么,不是说#是注释么... # encoding: utf-8
-
解决python中 f.write写入中文出错的问题
一个出错的例子 #coding:utf-8 s = u'中文' f = open("test.txt","w") f.write(s) f.close() 原因是编码方式错误,应该改为utf-8编码 解决方案一: #coding:utf-8 s = u'中文' f = open("test.txt","w") f.write(s.encode("utf-8")) f.close() 解决方案二: #codi
-
解决Python中list里的中文输出到html模板里的问题
最仅在做一个数据分析的功能时候遇到将list中的中文字符按照数组的形式输出到html模板里的js中进行处理,但是直接输出模板会按照unicode编码输出,这个问题真的让人头大. 本方法实在flask框架里完成的,以下是解决方法,仅供参考. //r_cname保存的是list类型,存储的是中文字符串 print r_cname //输出unicode编码格式,格式如下 [u'\u6e56\u4eba', u'\u7070\u718a', u'\u9ec4\u8702', u'\u70ed\u706
-
python中fastapi设置查询参数可选或必选
目录 可选查询参数 必选查询参数 可选和必选参数共存 为可选参数做类型提示 前言: 在fastapi中,我们定义的查询参数是可以设置成:必选参数 or 可选参数. 可选查询参数 z只要给查询参数的默认值设置为None,表示该查询参数是可选参数. from fastapi import FastAPI app = FastAPI() @app.get("/items/{item_id}") async def read_item(item_id: str, q=None)
-
Python读写Json涉及到中文的处理方法
今天在帮前端准备数据的时候,需要把数据格式转成json格式,说实话,涉及到中文有时候真的是很蛋疼,除非对Python的编码规则比较了解,不然处理起来真的很蛋疼. 整个逻辑 我们需要处理的是把一些文章处理,生成多个html文件,然后用json来显示文章的列表,图片,摘要和标题. 思路 为了以后的数据扩展,那必须有一个数据库,我的想法就是自己写一个简单的网页做为提交输入,然后post到后台以后录入到数据库中,再写一个展示文章的页面,展示效果正确后,写一个requests动态的把所有的数据都爬下来生成
-
python中numpy.zeros(np.zeros)的使用方法
翻译: 用法:zeros(shape, dtype=float, order='C') 返回:返回来一个给定形状和类型的用0填充的数组: 参数:shape:形状 dtype:数据类型,可选参数,默认numpy.float64 dtype类型: t ,位域,如t4代表4位 b,布尔值,true or false i,整数,如i8(64位) u,无符号整数,u8(64位) f,浮点数,f8(64位) c,浮点负数, o,对象, s,a,字符串,s24 u,unicode,u24 order:可选参数
随机推荐
- Android用于校验集合参数的小封装示例
- C++ 中const对象与const成员函数的实例详解
- javascript中声明函数的方法及调用函数的返回值
- ISA Server 的故障排除工具(4)
- jQuery1.4.2与老版本json格式兼容的解决方法
- Python利用前序和中序遍历结果重建二叉树的方法
- js预加载图片方法汇总
- C#默认以管理员身份运行程序实现代码
- Mysql 远程连接配置实现的两种方法
- JS判断字符串包含的方法
- 集群运维自动化工具ansible之使用playbook安装zabbix客户端
- Javascript基础知识(三)BOM,DOM总结
- 用SQL语句实现随机查询数据并不显示错误数据的方法
- JQuery 实现在同一页面锚点链接之间的平滑滚动
- windows下通过vnc访问liunx服务器
- Linux下如何搭建两个tomcat服务
- 基于vue cli重构多页面脚手架过程详解
- Python输入二维数组方法
- Python Django Vue 项目创建过程详解
- android实现指纹识别功能