字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码. decode的作用是将其他编码的字符串转换成unicode编码,如str1.decode('gb2312'),表示将gb2312编码的字符串str1转换成unicode编码. encode的作用是将unicode编码转换成其他编码的字符串,如str2.encode('gb2…
解决python语言在cmd下中文乱码的问题: a = "再见!"print (a.decode('utf-8').encode('gbk')) #解决在cmd下中文乱码的问题…
问题描述: 在写Python代码的过程中,有用到需要输出中文的地方(python2.6.5在中文注释的地方就会出错),但是运行后会出错 我的错误显示: SyntaxError: Non-ASCII character '\xef' in file WebService.py on line 4, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details 错误提示中给出了问题解决的连接 问题…
下载HTMLTestRunner.py 第三方库 下载地址: python2:http://tungwaiyip.info/software/HTMLTestRunner.html 右键另存为下载HTMLTestRunner.py,将文件放到...\python\Lib目录下 python3:https://pan.baidu.com/s/1k4m6JFelcWH_QiHGlvjsUQ HTMLTestRunner是基于Python2开发的,要支持python3,需要修改HTMLTestRunn…
python+mongodb 在爬虫的过程中,抓到一个中文字段,encode和decode都无法正确显示 注:以下print均是在mongodb中截图显示的,在pythonshell中可能会有所不同 比如中文 “余年”,假设其为变量a 1. print a 结果如下: 使用type查询之后,显示的确是unicode编码(正常情况下讲unicode编码内容直接存入mongodb中是可以正常显示的) 2. print type(a) 结果如下: 3. print a.encode('utf-8')…
一.摆个图 DJ  DJ  DJ   Decode. J 解码 首先得知道字符串有哪些编码格式,至于为什么会有这么多的编码格式,以后再了解更新. 1.ASCII 占1个字节,只支持英文 2.GB2312 占2个字节,支持6700+汉字 3.GBK GB2312的升级版,支持21000+汉字,中文2个字节. 4.Unicode 2-4字节 已经收录136690个字符 5.UTF-8: 使用1.2.3.4个字节表示所有字符:优先使用1个字符.无法满足则使增加一个字节,最多4个字节.  英文占1个字节…
在zipfile.ZipFile中获得的filename有中日文则很大可能是乱码,这是因为 在zip标准中,对文件名的 encoding 用的不是 unicode,而可能是各种软件根据系统的默认字符集来采用(此为猜测),而zipfile中根据文件 flag 检测的时候,只支持 cp437 和 utf-8. 具体zipfile模块中的源代码如下if flags & 0x800: # UTF-8 file names extension filename = filename.decode('utf…
# -*- coding: utf-8 -*- # author:baoshan import pandas as pd import pymysql config = { "host": "localhost", "port": 3306, "user": "root", ", "charset": "utf8" } conn = pymysql.conn…
计算机里面,编码方法有很多种,英文的一般用ascii,而中文有unicode,utf-8,gbk,utf-16等等. unicode是 utf-8,gbk,utf-16这些的父编码,这些子编码都能转换成unicode编码,然后转化成子编码,例如utf8可以转成unicode,再转gbk,但不能直接从utf8转gbk 所以,python中就有两个方法用来解码(decode)与编码(encode),解码是子编码转unicode,编码就是unicode转子编码 1.编码 #encoding=utf-8…
!/usr/bin/env python coding=utf-8 s="中文" if isinstance(s, unicode): s=u"中文" print s.encode('gb2312') else: s="中文" print s.decode('utf-8').encode('gb2312')…
今天学习使用python爬虫的时候发现爬到的网页中文会乱码,一直网上搜索解决办法,一个一个试验过去,发现还是乱码,然后我就开始使用其它方法测试,用python自带的编辑器打开是正常的,发现是notepad++这款编辑器的问题,我更改了编码方式为utf-8无bom,尝试了所有设置,都没有用,新建,打开文件默认一直都是ansi格式,pynpp这款快捷打开.py格式的插件运行一直乱码,虽然没有发现问题的根源,但是知道编码是没有问题的,主要是这款编辑器出现的一些小问题 不过百度过后发现如果是乱码问题,最…
u = '中文' str3 = u.encode('utf-8') # 以utf-8编码对u进行编码,获得bytes类型对象 print(str3) u2 = str3.decode('utf-8') # 以utf-8编码对str3进行解码,获得str类型对象 print(u2) #打印结果如下: b'\xe4\xb8\xad\xe6\x96\x87' 中文…
1. 安装中文字体 一般系统自带wqy-microhei,其ttc文件位于/usr/share/fonts/truetype/wqy/wqy-microhei.ttc 2. 将ttc文件复制到python文件目录 sudo cp /usr/share/fonts/truetype/wqy/wqy-microhei.ttc ./ 3. 在python文件中加上 # -*- coding: utf-8 -*- import os.path from matplotlib.font_manager i…
在matplotlib.plot生成的统计图表中,中文总是无法正常显示.在网上也找了些资料,说是在程序中指定字体文件,不过那样的话需要对plot进行很多设置,而且都是说的设置坐标轴标题为中文,有时候图例的字体也无法改正. 原因:matplotlib默认字体并不是中文字体. 解决方法:将某中文字体设为默认首选字体,本文拟将默认字体设为 微软雅黑 . 环境:win7 x64, python2.7 过程: 在python的安装目录中找到配置文件:%Python_Home%\Lib\site-packa…
https://docs.python.org/2/howto/unicode.html a Unicode string is a sequence of code points, which are numbers from 0 to 0x10ffff. This sequence needs to be represented as a set of bytes (meaning, values from 0–255) in memory. The rules for translatin…
首先找到这里的解决方法, count = cursor.fetchall() for i in count: idc_a = i[0] if isinstance(idc_a, unicode): idc_a = idc_a.encode('utf-8') print idc_a 但只能解决查询显示乱码问题 后来继续查资料,找到了这里, 解决方法很简单拿,和数据库建立连接后,执行: db.set_character_set('utf8') dbc.execute('SET NAMES utf8;…
使用encoding='utf-8',写入的文档是乱码. 解决办法: 修改encoding='utf-8-sig' 关于文件open()函数: open(path,'-模式-',encoding='utf-8') 模式类型: w:以写方式打开           w+:以读写方式打开 a:以追加模式打开        a+:以读写模式打开 注意: 1.使用'w'模式,文件若存在,会先清空,后创建. 2.使用'a'模式,把所写入文件的数据追加到文件的末尾. 关于 UnicodeEncodeErro…
转自:http://blog.csdn.net/a921800467b/article/details/8579510 为什么会报错“UnicodeEncodeError:'ascii' codec can't encode characters in position 0-1: ordinal notin range(128)”?本文就来研究一下这个问题.字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(…
edu.codepub.com/2009/1029/17037.php 这个问题在python3.0里已经解决了. 这有篇很好的文章,可以明白这个问题: 为什么会报错“UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)”?本文就来研究一下这个问题.字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为…
转自: http://blog.sina.com.cn/s/blog_765abd7b0101dtbw.html 学习,记录一下.中文编码真的挺麻烦.抽空把自己的sb3的配置写一些. 该问题让我纠结了足足有两天的时间.万幸最后终于给解决了 os:win7/win8   python:v2.7.5 如果用sublime在控制台输出中文乱码 第一步:在代码的前两行加入 #!/usr/bin/python #-*- coding : utf-8 -*- 加入上面代码后执行.失败后继续往下(怪异的现象打…
转~Python字符串的encode与decode研究心得——解决乱码问题 为什么Python使用过程中会出现各式各样的乱码问题,明明是中文字符却显示成“/xe4/xb8/xad/xe6/x96/x87”的形式?为什么会报错“UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)”?本文就来研究一下这个问题. 字符串在Python内部的表示是unico…
引言: 在Restful类的服务设计中,经常会碰到需要在URL地址中使用中文作为的参数的情况,这种情况下,一般都需要正确的设置和编码中文字符信息.乱码问题就此产生了,该如何解决呢?且听本文详细道来. 1.  问题的引出 在Restful的服务设计中,查询某些信息的时候,一般的URL地址设计为: get /basic/service? keyword=历史 , 之类的URL地址. 但是,在实际的开发和使用中,确是有乱码情况的发生,在后台的读取keyword信息为乱码,无法正确读取. 2. 乱码是如…
1,注意:请使用智慧型浏览器 "CHROME" 配合理解和运作本文中提到的程序. 2,提示:谷歌的CHROME浏览器是迄今为止最智慧的浏览器,没有之一,只有第一. 3,谷歌的CHROME浏览器最特殊的一点是:"根据字符集使用不同的后台智能解码程序". 4,本文内容请见红字部分: 使用办法为: 在文件中开头加入代码如下:      #!/usr/bin/python  或 者  #!user/bin/env python   # -*- coding: utf-8 -…
ASCII码 标准ASCII码使用7位二进制数表示大写或小写字母,数字0到9标点符号以及在美式英语中使用的特殊控制字符. 在标准ASCII码中,最高位(b7)用作奇偶校验位,所谓奇偶校验,是指在代码传送过程中用来检验是否出现错误的一种方法,一般分寄校验和偶校验两种.奇校验规定:正确的代码一个字节中1的个数必须是奇数,若非奇数,则在最高位b7添1:偶校验规定:正确的代码一个字节中1的个数必须是偶数,若非偶数,则在最高位b7添1. 后128个称为扩展ASCII码.许多基于x86的系统都支持使用扩展(…
python unittest要产生一个可看的报告,需要借助一个第三方的包 下载HTMLTestRunner.py 第三方库 ,参考地址: http://tungwaiyip.info/software/HTMLTestRunner.html 是个牛人自己写的,真挺不错的,佩服佩服 下载后,文件拷贝到python工程的目录里,可以引用到就行 使用: 代码如下 复制代码 import lib.HTMLTestRunner from testDataDriver import Testdriver…
关键字:Python UTF-8 GBK 中文 乱码 估计入门时都会遇到的.我是在windows下用的Python25自带的IDLE编辑运行的,发现运行脚本得出的结果有一些中文显示是乱码,但有一些是正常的.百思不得其解.首先查看了一下源文件的编码格式,是UTF-8.经过搜索再搜索,调试再调试,也换了几个编译器,发现比IDLE还糟糕(可能需要进行encode设置).问题终于解决了,一共花了俺将近5个小时,写在这里,希望遇到问题的人能搜索到这里,不再重犯. 乱码原因:因为你的文件声明为utf-8,并…
先学了R,最近刚刚上手python,所以想着将python和R结合起来互相对比来更好理解python.最好就是一句python,对应写一句R. pandas可谓如雷贯耳,数据处理神器. 以下符号: =R= 代表着在R中代码是怎么样的. -------------------------------------------- 字符编码 encode 和 decode Python2 默认的编码是 ascii,通过 encode 可以将对象的编码转换为指定编码格式(称作"编码"),而 de…
关于python 字符串编码一直没有搞清楚,今天总结了一下. Python 字符串类型 Python有两种字符串类型:str 与 unicode. 字符串实例 # -*- coding: utf-8 -*- # 这个是 str 的字符串 s = '关关雎鸠' # 这个是 unicode 的字符串 u = u'关关雎鸠' print isinstance(s, str) # True print isinstance(u, unicode) # True print s.__class__ # <…
python基础系列教程——Python中的编码问题,中文乱码问题 如果不声明编码,则中文会报错,即使是注释也会报错. # -*- coding: UTF-8 -*- 或者 #coding=utf-8 就行了 . 在第一行不区分大小写. 文档编码是一种告诉程序——无论是计算机的操作系统还是Python 代码——读取文档的规则.正确读取一个文档,往往需要先知道文件的扩展名,因为编码方式往往与扩展名有很大的关系. (1)纯文本文档的获取与处理:直接用urlopen读取后,用read()函数获取文本内…
最近所写的代码中需要用到python去连接MySql数据库,因为是用PyQt5来构建的GUI,原本打算使用PyQt5中的数据库连接方法,后来虽然能够正确连接上发现还是不能提交修改内容,最后在qq交流群中有网友说自己遇到这种问题都是使用第三方的方法来解决,于是我便想起了用 PyMySql 这个Python连接Mysql的库来进行实现,一切都很顺,但是只有到了中文内容的读取时总是出现各种乱码. sql="select id, title, pub_date, pub_url from message…