python操作mysql中文显示乱码的解决方法

yipeiwu_com5年前Python基础

本文实例展示了一个脚本python用来转化表配置数据xml并生成相应的解析代码。
但是在中文编码上出现了乱码,现将解决方法分享出来供大家参考。

具体方法如下:

1. Python文件设置编码 utf-8 (文件前面加上 #encoding=utf-8)
2. MySQL数据库charset=utf-8
3. Python连接MySQL是加上参数 charset=utf8
4. 设置Python的默认编码为 utf-8 (sys.setdefaultencoding(utf-8)

示例代码如下:

复制代码 代码如下:
#encoding=utf-8
 
import sys
import MySQLdb as mdb
 
reload(sys)
sys.setdefaultencoding('utf-8')
 
con = None
 
try:
    con = mdb.Connect('localhost','root','jobin','zmld',charset='utf8')
    cur = con.cursor()
    cur.execute("show full columns from player")
 
    numRows = int(cur.rowcount)
 
    for i in range(numRows):
        row = cur.fetchone()
        comment = row[len(row) - 1]
        print comment
finally:
    if con:
        con.close()

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

相关文章

python 不以科学计数法输出的方法

其实很简单只需两个语句: import numpy as np np.set_printoptions(suppress=True) 这样就可以搞定 以上这篇python 不以科学...

Python批量修改文件后缀的方法

Python批量修改文件后缀的方法

近期下载了很多各种教程, 但是不幸的是后缀名都是 ".mp4", 而本人喜欢 ".rmvb" 后缀,由于有轻微洁癖, 受不了后面的 ".mp4" 缀, 但是手动修改又太过繁琐, 所以用近...

Python中的多重装饰器

多重装饰器,即多个装饰器修饰同一个对象【实际上并非完全如此,且看下文详解】 1.装饰器无参数: 复制代码 代码如下: >>> def first(func): &nbs...

python Django中models进行模糊查询的示例

多个字段模糊查询, 括号中的下划线是双下划线,双下划线前是字段名,双下划线后可以是icontains或contains,区别是是否大小写敏感,竖线是或的意思 #搜索功能 @csrf_...

Django实现文件上传下载功能

Django实现文件上传下载功能

项目介绍 最近学习django,通过文件上传下载这个小项目,总结下常用的知识点。 做这个案例我有以下需求: 1.要支持一次上传多个文件 2.支持上传后记录上传的数据以及列表展示 3.支持...