Day1:字符编码】的更多相关文章

字符编码 python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill) ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256-1,所以,ASCII码最多只能表示 255 个符号. 关于中文 为了处理汉字,程序员设计了用于简体中文的GB2312和用于繁体中文…
ord() 函数 获取字符的整数表示chr() 函数 把整数编码转换为对应字符'\十六进制编码\十六进制编码' 可以将字符的整数编码使用十六进制的方式这样写Python字符串类型为str,在内存中以unicode表示,一个字符对应若干个字节.如果要保存或传输,就需要把str变为以字节为单位的bytes. Python对bytes类型的数据用带b前缀的单引号或双引号表示, 如 b'ABC'.虽然a = 'ABC' 和 a1 = b'ABC' 显示得一样,但是bytes的每个字符只占用一个字节.en…
一.ASCII码 ASCII(American Standard Code for Information Interchange,美国标准信息交换代码),8位,一个字节,最多只能表示255个符号. 二.GB2312(1980年) 一共收录了7445个字符,包括6763个汉字和682个其他符号,72*94=6768,含5个空位. 三.GBK 1.0(1995年) 21886个符号(其中有21003个汉字). 四.GB18030(2000年) 27484个汉字.同时还收录了藏文.蒙文.维吾尔文等主…
第一个python程序: Hello World程序 windows命令行中输入:python,进入python交互器,也可以称为解释器. print("Hello World!") windows中 新建文本文件:d:\helloworld.py,键入: print("Hello World!"), 命令行中运行:python d:\helloworld.py linux中 编辑helloworld.py: #!/user/bin/env python print…
在使用Python做爬虫的过程中,经常遇到字符编码出问题的情况. UnicodeEncodeError: 'ascii' codec can't encode character u'\u6211' in position 0: ordinal not in range(128) 针对这种情况,网上已经有很多原理性的分析了,我在此就不一一列举.然而,我相信很多人,即便看完原理以后也不知道怎么解决. 我自己琢磨出一种快速解决的方法: def get_page_sourse(url): req =…
1.字符编码 #ASCII码里只能存英文和特殊字符 不能存中文 存英文占1个字节 8位#中文编码为GBK 操作系统编码也为GBK#为了统一存储中文和英文和其他语言文字出现了万国码Unicode 所有一个字符都占2个字节 16位#英文文档改为Unicode编码大小变大一倍 为解决这种浪费空间问题#出现了Unicode扩展集 Utf-8 为可变长的字符编码 默认英文字符按ASCII码存储 中文按照3个字节存储 编码都要先decode成unicode再转码成目标编码 #获取默认编码import sys…
修改/etc/mysql/my.cnf 配置文件: 最后重启mysql 服务,再查看: 编码已经改好了,可以支持中文字符编码了.…
1.修改数据库字符编码 mysql> alter database mydb character set utf8 ; 2.创建数据库时,指定数据库的字符编码 mysql> create database mydb character set utf8 ; 3.查看mysql数据库的字符编码 mysql> show variables like 'character%'; //查询当前mysql数据库的所有属性的字符编码 +--------------------------+-----…
关于Unicode,字符集,字符编码,每个程序员都应该知道的事 作者:Jack47 李笑来的文章如何判断一个人是否聪明?中提到: 必要.清晰.且准确的概念,是一切思考的基石.所谓思考,很大程度上,就是在建立那些概念与概念之间的关联.概念是必要.清晰.且准确的,它们之间的关联也应该是准确的. 确实很认同这两句话,搞清楚字符集,字符编码,Unicode等关键词的意义,基本上也就能搞明白遇到的编码问题了.本文力求通俗易懂,但涉及的内容比较多,而且编码问题又不是那么容易理解的,所以如果大家看完之后还是对…
在上篇博文(java中文乱码解决之道(一)-----认识字符集)中,LZ简单介绍了主流的字符编码,对各种编码都是点到为止,以下LZ将详细阐述字符集.字符编码等基础知识和ASCII.GB的详情. 一.基础知识 在了解各种字符集之前我们需要了解一些最基础的知识,如:编码.字符.字符集.字符编码基础知识. 编码 计算机中存储的信息都是用二进制表示的,我们在屏幕上所看到文字.图片等都是通过二进制转换的结果.编码是信息从一种形式或格式转换为另一种形式的过程,通俗点讲就是就是将我们看到的文字.图片等信息按照…
ASP.NET 中的字符编码问题,一般会有两个场景: HTML 编码:一般是动态显示 HTML 字符或标签,写法是:HttpUtility.HtmlDecode(htmlString) 或 Html.Raw(htmlString) 等. URL 编码:一般是作为 URL 的一部分,写法是:HttpUtility.UrlDecode(urlString) 或 Uri.EscapeDataString(urlString) 等,具体的流程就是上面的图,因为涉及到 URL 及请求处理,所以对于一些特殊…
一.前言 继上一篇写完字节编码内容后,现在分析在Java中各字符编码的问题,并且由这个问题,也引出了一个更有意思的问题,笔者也还没有找到这个问题的答案.也希望各位园友指点指点. 二.Java字符编码 直接上代码进行分析似乎更有感觉. public class Test { public static String stringInfo(String str, String code) throws Exception { byte[] bytes = null; if (code.equals(…
一.前言 在前面的解决乱码的一文中,只找到了解决办法,但是没有为什么,说白了,就是对编码还是不是太熟悉,编码问题是一个很简单的问题,计算机从业人员应该也必须弄清楚,基于编码的应用有Base64加密算法,然后,这个问题一直放着,想找个机会解决.于是乎,终于逮到机会,开始下手. 二.编码 关于ASCII.Unicode编码.UTF-8编码等问题,可以参见笔者另外一篇博客[字符编码]彻底理解字符编码. 三.Base64算法 Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,关于Bas…
很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物.他们看到8个开关状态是好的,于是他们把这称为"字节". 再后来,他们又做了一些可以处理这些字节的机器,机器开动了,可以用字节来组合出很多状态,状态开始变来变去.他们看到这样是好的,于是它们就这机器称为"计算机". 开始计算机只在美国用.八位的字节一共可以组合出256(2的8次方)种不同的状态. 他们把其中的编号从0开始的32种状态分别规定了特殊的用途,一但终端.打印机遇上约…
乱码引起的CSS失效原理:     由于一个中文是两个字符组成,在编码不一致的情况下会引发字符的“重新”组合,(半个汉字的编码字符与后面的字符组合生成新的“文字”)引发原本的结束符合“变异”,从而导致找不到结束符号,使得后面的CSS就会失效. 小技巧1:CSS中出现的乱码都是由于CSS字符编码与页面的字符编码不一致所引起的,因此最直接的方法就是使字符编码一致.将CSS指定编码类型,例:@charset "utf-8";(指定编码类型为utf-8,须写在CSS文件第一行) 小技巧2:CS…
Mysql数据库是一个开源的数据库,应用非常广泛.以下是修改mysql数据库的字符编码的操作过程和将表的字符编码转换成utf-8的方法,需要的朋友可以参考下. mysql将表的字符编码转换成utf-8: alter table tb_anniversary convert to character set utf8; 修改数据库mysql字符编码为UTF8: 步骤1:查看当前的字符编码方法: mysql> show variables like'character%'; +-----------…
本文出处 http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html 只是为了记录一下省得要去搜. 今天中午,我突然想搞清楚Unicode和UTF-8之间的关系,于是就开始在网上查资料. 结果,这个问题比我想象的复杂,从午饭后一直看到晚上9点,才算初步搞清楚. 下面就是我的笔记,主要用来整理自己的思路.但是,我尽量试图写得通俗易懂,希望能对其他朋友有用.毕竟,字符编码是计算机技术的基石,想要熟练使用计算机,就必须懂得一点…
1.1什么是字节 字节(Byte)是计算机信息技术用于计量存储容量的一种计量单位,也表示一些计算机编程语言中的数据类型和语言字符. 比特(bit)在计算机中最小的单位,在二进制位的电脑的系统中,每一bit,表示0或1 ,的数字信号. 1.1.1在不同字符编码的字节表示 ASCII码:一个英文字母(不分大小写)占一个字节(1B)的空间.一个二进制数字序列,在计算机中作为一个数字单元,一般为8位二进制数,换算成10进制,最小值0,最大值255. utf-8编码:一个英文字符等于一个字节,一个中文(含…
在Form元素的语法中,EncType表明提交数据的格式 用 Enctype 属性指定将数据回发到服务器时浏览器使用的编码类型. 下边是说明: application/x-www-form-urlencoded: 窗体数据被编码为名称/值对.这是标准的编码格式. multipart/form-data: 窗体数据被编码为一条消息,页上的每个控件对应消息中的一个部分. text/plain: 窗体数据以纯文本形式进行编码,其中不含任何控件或格式字符. 补充form的enctype属性为编码方式,常…
5.5以后的版本对字符编码方式修改的办法,原来在[mysqld]下的修改已经发生了变化,正确方式如下: [mysqld]下添加的应该为: character-set-server=utf8 collation-server=utf8_general_ci [client]下添加: default-character-set=utf8 保存退出 $sudo service mysql restart $mysql mysql> show variables like 'character%'; +…
理解什么是字符编码? 计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节.比如两个字节可以表示的最大整数是65535,4个字节可以表示的最大整数是4294967295. 那么1字节能够转换的最大二进制位为:2**64-1 ASCII编码: 一个英文字母占一个字节空间 其实ascii编码就…
转自:http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html 作者: 阮一峰 日期: 2007年10月28日 今天中午,我突然想搞清楚Unicode和UTF-8之间的关系,于是就开始在网上查资料. 结果,这个问题比我想象的复杂,从午饭后一直看到晚上9点,才算初步搞清楚. 下面就是我的笔记,主要用来整理自己的思路.但是,我尽量试图写得通俗易懂,希望能对其他朋友有用.毕竟,字符编码是计算机技术的基石,想要熟练使用计算机,…
1.元组()元组跟列表一样,但是不能增删改,能查.元组又叫只读列表2个方法 一个 count 一个 index2.字典{}字典是通过key来寻找value因为这里功能比较多,所以写入了一个Code里面,后面加了注释. #!/usr/bin/env python #_*_coding:utf-8_*_ info = { 'stu1101':"Tenglan Wu", 'stu1102':"LongZe Luola", 'stu1103':"XiaoZe Ma…
***了解计算机的底层原理*** Python全栈开发之Python基础-字符编码与转码 需知: 1.在python2默认编码是ASCII, python3里默认是utf-8 2.unicode 分为 utf-32(占4个字节),utf-16(占两个字节),utf-8(占1-4个字节), so utf-8就是unicode 3.在py3中encode,在转码的同时还会把string 变成bytes类型,decode在解码的同时还会把bytes变回string 一.python2 py2里默认编码…
转载地址:http://www.imkevinyang.com/2010/06/%E5%85%B3%E4%BA%8E%E5%AD%97%E7%AC%A6%E7%BC%96%E7%A0%81%EF%BC%8C%E4%BD%A0%E6%89%80%E9%9C%80%E8%A6%81%E7%9F%A5%E9%81%93%E7%9A%84.html 字符编码的问题看似很小,经常被技术人员忽视,但是很容易导致一些莫名其妙的问题.这里总结了一下字符编码的一些普及性的知识,希望对大家有所帮助. 还是得从ASC…
1.参考网址: 1.1.http://blog.useasp.net/archive/2012/04/24/how_to_use_UTF8_encoding_in_Windows_CMD.aspx 1.2.http://jingyan.baidu.com/article/e75aca85440f01142edac636.html 2.下面的修改 只应用到本CMD窗体 2. 输入 CHCP,回车查看当前的编码: 3. 输入 CHCP 65001,回车: ZC: 修改之后,可以通过 右键CMD菜单栏…
作者: 阮一峰 日期: 2007年10月28日 今天中午,我突然想搞清楚Unicode和UTF-8之间的关系,于是就开始在网上查资料. 结果,这个问题比我想象的复杂,从午饭后一直看到晚上9点,才算初步搞清楚. 下面就是我的笔记,主要用来整理自己的思路.但是,我尽量试图写得通俗易懂,希望能对其他朋友有用.毕竟,字符编码是计算机技术的基石,想要熟练使用计算机,就必须懂得一点字符编码的知识. 1. ASCII码 我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串.每一个二进制位(bit)…
字符编码与encode.decode的问题:  用8个开关表示世界万物   ASCII :  American Standard Code for Information Interchange,美国信息互换标准代码,只用了前7位,127个状态   GB2312:是对ASCII的中文扩展(前127不变,大于127的+后边另一个大于127的表示中文)两个字节表示一个汉字   GBK:包括了GB2312 的所有内容,增加了近20000个新的汉字(包括繁体字)和符号   GB18030:加了几千个新的…
 1.Java的运行环境中,String是什么编码? 使用java做程序设计语言,字符编码是和jvm相关的,和操作系统无关. java默认的编码是jvm在安装的时候就确定了的,它是根据你的系统的环境确定并默认的. 我们可以通过java的Charset类的defaultCharset()方法来获取它默认的字符编码. 我安装的JDK是1.7,系统环境是64位,获取的默认的字符编码是utf16的,并且是Big-Endian(这点我比较奇怪,我的机器是Little-endian的,而虚拟机竟然默认是大端…
在网络传输和文件操作中,如果数据量很大,需要将其划分为较小的快,此时可能出现一个数据块的末尾是一个不匹配的高代理项,而与其匹配的低代理项在下一个数据块. 这时候使用Encoding的GetBytes方法处理较为麻烦,我们直接使用Encoder处理. Encoder可以将一组字符编码为一个字节序列.而Decoder可以将已编码的字节序列解码为字符序列. 若要获取的实现的实例 Encoder 类,应用程序应使用 GetEncoder 方法 Encoding 实现. GetByteCount 方法确定…