在SQLite-Python中实现返回、查询中文字段的方法

yipeiwu_com6年前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设计】。

相关文章

跟老齐学Python之大话题小函数(2)

跟老齐学Python之大话题小函数(2)

上一讲和本讲的标题是“大话题小函数”,所谓大话题,就是这些函数如果溯源,都会找到听起来更高大上的东西。这种思维方式绝对我坚定地继承了中华民族的优良传统的。自从天朝的臣民看到英国人开始踢足...

python3.6编写的单元测试示例

python3.6编写的单元测试示例

本文实例讲述了python3.6编写的单元测试。分享给大家供大家参考,具体如下: 使用python3.6编写一个单元测试demo,例如:对学生Student类编写一个简单的单元测试。 1...

Python标准库sched模块使用指南

事件调度 sched 模块内容很简单,只定义了一个类。它用来最为一个通用的事件调度模块。 class sched.scheduler(timefunc, delayfunc) 这个类定义...

在Python 字典中一键对应多个值的实例

如下所示: #encoding=utf-8 print '中国' #字典的一键多值 print'方案一 list作为dict的值 值允许重复' d1={} key=1...

python pandas cumsum求累计次数的用法

python pandas cumsum求累计次数的用法

本文主要是针对 cumsum函数的一些用法。具体应用场景看下面的数据集。 第一列是userID,第二列是安装的时间,第三列是安装的次数。 我们现在想做一件事情。就是统计用户在某一天前...