python ASCII编码集】的更多相关文章

python在安装时,默认的编码是ascii,当程序中出现非ascii编码时,python的处理常常会报这样的错UnicodeDecodeError: 'ascii' codec can't decode byte 0x?? in position 1: ordinal not in range(128),python没办法处理非ascii编码的,此时需要自己设置将python的默认编码,一般设置为utf8的编码格式. 查询系统默认编码可以在解释器中输入以下命令: Python代码 >>>…
之前遇到此异常UnicodeEncodeError: 'ascii' codec can't encode characters...,都是用这种方式解决:sys.setdefaultencoding('utf-8') 今天看到如下文章,阐述了此方式的弊端: http://blog.ernest.me/post/python-setdefaultencoding-unicode-bytes 但此文章只考虑了未使用第三方库的情况下的解决办法,而第三方库里如果也有print的话,就束手无策了,总不能…
首先描述下问题:  在使用python计算出结果后将结果插入到mysql过程中,报如下错误.原因很好定位就是编码的问题.那么到底是编码哪里出了问题了呢? 报错如上: 排查顺序: 第一:python的编码 自己的代码,发现打开的时候的确已经制定了编码?那么问题应该不是在python的编码问题. 同时采用: 打印出word[5] 又发现会报错 ASCii 不识别等错误.于是再这里纠结了很久很久.终于把打印问题解决了. 解决办法:如果要打印出正常的中文,在程序开头加上这么一段代码 即可: python…
原文网址:http://blog.csdn.net/trochiluses/article/details/16825269 摘要:在进行python脚本的编写时,如果我们用python来处理网页数据或者进行与中文字符有关的处理工作,经常出现这样的出错信息:SyntaxError: Non-ASCII character '\xe6' in file ./filename.py on line 3, but no encoding declared.本文主要讲解python中与unicode和中…
在2.7环境中我们要写上这一行#-*- coding:utf-8 -*- 为什么我们要加这一行呢?这一样的意思是置顶编码类型为utf-8编码! 首先在看这个问题之前,咱们是否曾想过一个问题? 为什么我们可以在显示器上能看到这些文字.数字.图片.字符.等等信息呢?大家都知道计算机本身只能识别 0 1 的组合,他们是怎么展示这些内容的呢?我们怎么和计算机去沟通呢? 如果我们使用0 1 的组合和计算机沟通你还能看到这些内容吗?还有一个问题就是01的组合对于咱们说几乎看不懂对吧! 那怎么办?如何让计算机…
声明:本文参考 Python字符编码详解 在计算机中我们不管用什么语言和程序,最终数据在计算机中的都是字节码(也就是01形式)的形式存在的,如果 计算机直接把字节码显示在屏幕上,很明显一般人看不懂字节码,我们能看懂的只有字符,所以就需要用程序把字节码翻译成字符,要 将字节码翻译成字符,必须在字节码和字符之间建立一种逻辑映射的关系, 我们就使用这种逻辑映射的关系在字节码和字符之间互相 转化,这种逻辑映射关系我们就称之为字符集.      所以字节码和字符之间的翻译过程就是编码或者解码的过程,至于这…
Python的编码和解码 在不同的国家,存在不同的文字,由于现在的软件都要做到国际化通用,所以必须要有一种语言或编码方式,来实现各种编码的解码,然后重新编码. 在西方国家,没有汉字,只有英文,所以最开始使用的是ASCII编码,只有96个元素,所以用8位(1字节)就能完全表示,但是无法解析中文. 中国有汉字,所以在计算机的发展史上,出现了GB2312.GB18032.GBK等多种编码方式,在汉字上以2个字节存放. 为了能够实现通用,出现了一种标准的编码方式,unicode编码,在unicode编码…
(转载)字符编码和python使用encode,decode转换utf-8, gbk, gb2312 (http://www.cnblogs.com/jxzheng/p/5186490.html) ASCII码 标准ASCII码使用7位二进制数表示大写或小写字母,数字0到9标点符号以及在美式英语中使用的特殊控制字符. 在标准ASCII码中,最高位(b7)用作奇偶校验位,所谓奇偶校验,是指在代码传送过程中用来检验是否出现错误的一种方法,一般分寄校验和偶校验两种.奇校验规定:正确的代码一个字节中1的…
名称 说明 ASCII 只能存英文和拉丁字符,一个字符占一个字节,8位. ASCII 码是不支持中文的,支持中文的第一张表是 GB2312 GB2312 支持中文,收录了 7445个字符 GBK1.0 支持中文,收录了 21886个字符 GB18030 收录了 27484个汉字,及藏文,维吾尔文等少数名族文字 unicode 万国码,支持所有国家和地区的编码,向下兼容 gb2312, gbk UTF-32 一个字符占用4个字节 UTF-16 一个字符占2个字节或2个以上 UTF-8 unicod…
上半年的KPI,是用python做一个测试桩系统,现在系统框架基本也差不多定下来了.里面有用到新学的工厂设计模式以及以及常用的大牛写框架的业务逻辑和python小技巧.发现之前自己写的代码还是面向过程思想的多,基本没有面向对象的思想,近半年看的代码给了很大的触动,我需要升级我的技能了,于是也花了挺多时间在这个KPI学习上,现在先总结下在做这个系统时我所面临到的python的字符编码问题. 字符编码问题,如果处理有问题,可能直接就报错了:如果处理不得当,中文就会显示乱码.这是最初接触字符编码遇到问…
完全理解字符编码 与 Python 的渊源前,我们有必要把一些基础概念弄清楚,虽然有些概念我们每天都在接触甚至在使用它,但并不一定真正理解它.比如:字节.字符.字符集.字符码.字符编码. 字节 字节(Byte)是一个抽象出来的计算机测量单位.8个0和1组成的二进制数据称为1个字节(1Byte=8bits).字节是计算机中数据存储的基本单元. 计算机中的所有数据,不论是保存在磁盘文件上的还是网络上传输的数据(文字.图片.视频.音频文件)都是由字节组成的 字符 字符(Character)也是一个抽象…
ASCII码 我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串.每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte).也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从0000000到11111111. 上个世纪60年代,美国制定了一套字符编码,对英语字符与二进制位之间的关系,做了统一规定.这被称为ASCII码,一直沿用至今. ASCII码一共规定了128个字符的编码,比如…
转换流的使用 1.转换流涉及到的类:属于字符流InputStreamReader:将一个字节的输入流转换为字符的输入流解码:字节.字节数组 --->字符数组.字符串 OutputStreamWriter:将一个字符的输出流转换为字节的输出流编码:字符数组.字符串 ---> 字节.字节数组 说明:编码决定了解码的方式 2.作用:提供字节流与字符流之间的转换 3.图示: 4.典型实现: @Test public void test1() throws IOException { FileInput…
ANSI不是一种具体的编码格式 ANSI在中文Windows操作系统代码指的是GBK编码 ANSI在中文Mac操作系统代码指的是UTF-8编码 ANSI在其他国家的操作系统中有其他的编码格式 #ASCII码:不能存中文 一个字符占用8位#uniconde:这是是一种字符集,可以存中文,一个字符占用16位空间(不分中文还是英文)#unic这种存储方式,对于存储纯英文,浪费了空间, Unicode 本身并没有规定一个字符究竟是用一个还是三个或者四个字节表示.Unicode 只规定了每个字符对应到唯一…
1 #将Unicode转换成普通的Python字符串:"编码(encode)" 2 unicodestring = u"Hello world" 3 utf8string = unicodestring.encode("utf-8") 4 asciistring = unicodestring.encode("ascii") 5 isostring = unicodestring.encode("ISO-8859-1…
一.什么是字符编码 计算机要想工作必须通电,也就是说‘电’驱使计算机干活,而‘电’的特性,就是高低电压(高低压即二进制数1,低电压即二进制数0),也就是说计算机只认识数字 编程的目的是让计算机干活,而编程的结果说白了只是一堆字符,也就是说我们编程最终要实现的是:一堆字符驱动计算机干活 所以必须经过一个过程: 字符串--------(翻译过程)------->数字 这个过程实际就是一个字符如何对应一个特定数字的标准,这个标准称之为字符编码 二.字符编码分类 计算机由美国人发明,最早的字符编码为AS…
来源:廖雪峰 看到一篇很不错的讲python编码的文章,转过来 划重点: unicode是一种统一的编码方式,它将所有的编码方式都统一到了同一套规范中,避免了乱码问题. encode() 表示从 unicode —> 其他编码方式 decode() 则表示从 其他编码方式 —> unicode 字符编码 我们已经讲过了,字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(…
本文简单介绍了各种常用的字符编码的特点,并介绍了在python2.x中如何与编码问题作战 :) 请注意本文关于Python的内容仅适用于2.x,3.x中str和unicode有翻天覆地的变化,请查阅其他相关文档. 尊重作者的劳动,转载请注明作者及原文地址 >.< 转自 http://www.cnblogs.com/huxi/archive/2010/12/05/1897271.html 1. 字符编码简介 1.1. ASCII ASCII(American Standard Code for…
http://www.cnblogs.com/huxi/archive/2010/12/05/1897271.html 1. 字符编码简介 1.1. ASCII ASCII(American Standard Code for Information Interchange),是一种单字节的编码.计算机世界里一开始只有英文,而单字节可以表示256个不同的字符,可以表示所有的英文字符和许多的控制符号.不过ASCII只用到了其中的一半(\x80以下),这也是MBCS得以实现的基础. 1.2. MBC…
前在一个项目中遇到用post提交一个xml,xml中含有中文,对于单独的py文件,使用urllib2.urlopen完全ok,但在django中使用就一直报编码错误,然后在网上看到这篇文章不错,决定mark一下,学习学习.原文地址:http://www.2cto.com/kf/201407/317866.html 全部是在python2.7.*的环境下. 1.Python编码基础 1.1 str和unicode python中有两种数据模型来支持字符串这种数据类型,str和unicode,它们的…
在正式说明之前,先给大家一个参考资料:戳这里 文章的内容参考了这篇资料,并加以总结,为了避免我总结的不够完善,或者说出现什么错误的地方,有疑问的地方大家可以看看上面那篇文章. 以下说明是针对于python2.x版本,因为在python3.x中默认使用的是Unicode. 下面开始讲python中的编码问题,首先,我们看看编码有哪些. 1. ASCII ASCII是用一个字节表示字符,而一个字节由八位二进制组成,所以能产生2**8=256种变化,在计算机刚诞生的年代,用来表示大小写的26个英文字母…
1. 字符编码简介 1.1. ASCII ASCII(American Standard Code for Information Interchange),是一种单字节的编码.计算机世界里一开始只有英文,而单字节可以表示256个不同的字符,可以表示所有的英文字符和许多的控制符号.不过ASCII只用到了其中的一半(\x80以下),这也是MBCS得以实现的基础. 1.2. MBCS 然而计算机世界里很快就有了其他语言,单字节的ASCII已无法满足需求.后来每个语言就制定了一套自己的编码,由于单字节…
转自:http://www.cnblogs.com/huxi/archive/2010/12/05/1897271.html 1. 字符编码简介 1.1. ASCII ASCII(American Standard Code for Information Interchange),是一种单字节的编码.计算机世界里一开始只有英文,而单字节可以表示256个不同的字符,可以表示所有的英文字符和许多的控制符号.不过ASCII只用到了其中的一半(\x80以下),这也是MBCS得以实现的基础. 1.2.…
开发经常会遇到各种字符串编码的问题,例如报错SyntaxError: Non-ASCII character 'ascii' codec can't encode characters in position 0-2: ordinal not in range(128),又例如显示乱码. 由于之前不知道编码的原理,遇到这些情况,就只能不断的用各种编码decode和encode..... 今天整理一个python中的各种编码问题的原因和解决方法,以后遇到编码问题,就不会像莽头苍蝇一样,到处乱撞了.…
编码问题:Unicode把所有语言都统一到一套编码里,这样就不会再有乱码问题了. ASCII编码和Unicode编码的区别:ASCII编码是1个字节,而Unicode编码通常是2个字节.字母A用ASCII编码是十进制的65,二进制的01000001:字符0用ASCII编码是十进制的48,二进制的00110000,注意字符'0'和整数0是不同的:汉字中已经超出了ASCII编码的范围,用Unicode编码是十进制的20013,二进制的01001110 00101101.你可以猜测,如果把ASCII编…
我们的服务器为linux系统,日志中的字段通常会用不同分隔符来做分隔,在不同操作系统编码格式下查看也会有不同的体现,甚至会出现所谓的乱码.我在xshell5下常用的编码格式Unicode(UTF-8)和默认语言.通常xshell5的默认语言能查看到分隔符隔开的字段,而utf-8不能.在网上查了下\001作为分隔符的日志,从linux终端复制出来用notePad打开时看到的SOH,而\002分隔的,从终端复制到编辑器是里STX... 比如下案例: 一 java代码: public class ap…
Python中的文字对象 Python 3.x中处理文字的对象有str, bytes, bytearray. bytes和bytearray可以使用除了用作格式化的方法(format, format_map)以及几个特殊的基于Unicode的方法(casefold, isdecimal, isidentifier, isnumeric, isprintable, encode)以外几乎所有str的方法. bytes有一个类方法,可以通过序列来构建字符串,而这个方法不可以用在str上. >>&g…
python转码译码 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* BLOCKS =============================================================================*/ p, blockquote, ul, ol, dl, table, pre { margin: 15px 0…
近日须要不同的编码,关于上述编码,一直迷迷糊糊,查了些资料,总算大致了解了,以下全是从网上搜来的: 1.  ASCII和Ansi编码    字符内码(charcter code)指的是用来代表字符的内码.读者在输入和存储文档时都要使用内码,内码分为     单字节内码 -- Single-Byte character sets (SBCS),能够支持256个字符编码.     双字节内码 -- Double-Byte character sets)(DBCS),能够支持65000个字符编码.前者…