编码转换

Python中文全攻略

非 Y 不嫁゛ 提交于 2019-12-23 17:45:04
原文链接: http://blog.csdn.net/mayflowers/archive/2007/04/18/1568852.aspx 1. 在Python中使用中文 在Python中有两种默认的字符串:str和unicode。在Python中一定要注意区分“Unicode字符串”和“unicode对象”的区别。后面所有的“unicode字符串”指的都是python里的“unicode对象”。 事实上在Python中并没有“Unicode字符串”这样的东西,只有“unicode”对象。一个传统意义上的unicode字符串完全可以用 str 对象 表示。只是这时候它仅仅是一个字节流,除非解码为unicode对象,没有任何实际的意义。 我们用“哈哈”在多个平台上测试,其中“哈”对应的不同编码是: 1. UNICODE (UTF8-16), C854; 2. UTF-8, E59388; 3. GBK, B9FE。 1.1 Windows控制台 下面是在windows控制台的运行结果: 可以看出在控制台,中文字符的编码是GBK而不是UTF-16。将字符串s(GBK编码)使用decode进行解码后,可以得到同等的unicode对象。 注意:可以在控制台打印ss并不代表它可以直接被序列化,比如: 向文件直接输出ss会抛出同样的异常。在处理unicode中文字符串的时候

字符集

放肆的年华 提交于 2019-12-23 13:00:25
字符(Character)是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。字符集(Character set)是多个字符的集合,字符集种类较多,每个字符集包含的字符个数不同,常见字符集名称:ASCII字符集、GB2312字符集、BIG5字符集、 GB18030字符集、Unicode字符集等。计算机要准确的处理各种字符集文字,需要进行字符编码,以便计算机能够识别和存储各种文字。中文文字数目大,而且还分为简体中文和繁体中文两种不同书写规则的文字,而计算机最初是按英语单字节字符设计的,因此,对中文字符进行编码,是中文信息交流的技术基础。 ASCII 字符集 1.名称的由来   ASCII(American Standard Code for Information Interchange,美国信息互换标准代码)是基于罗马字母表的一套电脑编码系统。 2.特点   它主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO 646。 3.包含内容   控制字符:回车键、退格、换行键等。   可显示字符:英文大小写字符、阿拉伯数字和西文符号 4.技术特征   7位(bits)表示一个字符,共128字符 5.ASCII扩展字符集   7位编码的字符集只能支持128个字符,为了表示更多的欧洲常用字符对ASCII进行了扩展

点云数据压缩 G-PCC综述

回眸只為那壹抹淺笑 提交于 2019-12-23 10:37:03
0.什么是点云 参考链接:https://cloud.tencent.com/developer/article/1522263 用激光雷达或者摄像机矩阵将一个三维物体直接数字化,变成一个点的数据。每一个点会包括它的位置x、y、z和其他信息包括r、g、b和色彩信息y、u、v等,这样的描述方式我们称之为点云。 点云数据结构包括: 位置信息(geometry ):x,y,z 坐标 属性信息(attribute ):该点的颜色(RGB)等 其中属性信息是可选的,就像二维图像可以没有rgb分量一样,如果没有属性信息,点云就是二值化的黑白体。 点云的描述方式有一些特性,点和点之间没有联系,没有顺序。因此可以根据这样的特性进行随意的排序,用来未来压缩技术的优化。(如果不压缩,点云数据会十分庞大,或者说至少是冗余的)。点云压缩分两种,一种是V-PCC,将所有三维物体投影到不同的平面上;另外一种是G-PCC,基于几何的点云压缩。 1.编码框图 图片来自ISO/IEC JTC 1/SC 29/WG 11 N18673 Coding of moving pictures and audio 绿色模块是通常用于1类数据的选项,橙色模块是通常用于3类数据的选项 2.模块简介 0)部分关键词 occupancy code(占用码): An 8-bit code, named an occupancy

Vim 字符编码

 ̄綄美尐妖づ 提交于 2019-12-23 01:39:51
vim 编码方式的设置 转载:http://www.cnblogs.com/freewater/archive/2011/08/26/2154602.html 和所有的流行文本编辑器一样,Vim 可以很好的编辑各种字符编码的文件,这当然包括UCS-2、UTF-8 等流行的 Unicode 编码方式。然而不幸的是,和很多来自 Linux 世界的软件一样,这需要你自己动手设置。 Vim 有四个跟字符编码方式有关的选项,encoding、fileencoding、fileencodings、termencoding (这些选项可能的取值请参考 Vim 在线帮助 :help encoding-names),它们的意义如下: * encoding: Vim 内部使用的字符编码方式,包括 Vim 的 buffer (缓冲区)、菜单文本、消息文本等。默认是根据你的locale选择.用户手册上建议只在 .vimrc 中改变它的值,事实上似乎也只有在.vimrc 中改变它的值才有意义。你可以用另外一种编码来编辑和保存文件,如你的vim的encoding为utf-8,所编辑的文件采用cp936编码,vim会 自动将读入的文件转成utf-8(vim的能读懂的方式),而当你写入文件时,又会自动转回成cp936(文件的保存编码). * fileencoding: Vim 中当前编辑的文件的字符编码方式

Linux入门基础二

♀尐吖头ヾ 提交于 2019-12-22 17:04:23
Linux基础入门二 文章目录 Linux基础入门二 1.1字符集和编码 1.1.1 ASCII码 1.1.2 Unicode 1.2命令别名 1.3命令格式 1.4 基础命令 1.4.1 时间与日期 1.4.2 关机和重启 1.4.3用户登录信息查看命令 1.4.4文本编辑 1.4.5输出信息 1.5命令行扩展和被括起来的集合 1.6 tab键补全 1.6.1命令补全 1.6.2路径补全 1.6.3双击Tab键 1.1字符集和编码 字符集(Charset) :是一个系统支持的所有抽象字符的集合。字符是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。 字符编码(Character Encoding) :是一套法则,使用该法则能够对自然语言的字符的一个集合(如字母表或音节表),与其他东西的一个集合(如号码或电脉冲)进行配对。即在符号集合与数字系统之间建立对应关系,它是信息处理的一项基本技术。通常人们用符号集合(一般情况下就是文字)来表达信息。而以计算机为基础的信息处理系统则是利用元件(硬件)不同状态的组合来存储和处理信息的。元件不同状态的组合能代表数字系统的数字,因此字符编码就是将符号转换为计算机可以接受的数字系统的数,称为数字代码。 常见字符集名称 :ASCII字符集、GB2312字符集、BIG5字符集、GB18030字符集、Unicode字符集等

ASP 乱码问题

生来就可爱ヽ(ⅴ<●) 提交于 2019-12-22 11:40:46
http://www.blueidea.com/tech/program/2004/2351.asp 这几天研究UTF-8编码,太晕了,把我的看法和各位讨论讨论。 欢迎来批啊。以下都是我的想法,哪里有不对的请不吝赐教,帮忙指出来。 相关的题外话: 一、操作系统 window系统内部都是unicode的。文件夹名,文件名等都是unicode的,任何语言系统下都能正常显示。 二、输入法: 微软拼音输出的是Unicode的,智能ABC输出是简体中文的(所以智能ABC在非简体中文系统根本不能用,只能打英文)。 三、网页的textarea 网页的textarea是用unicode显示的。所以往里打什么字都能显示。而一些flash做的输入框就不行了。 四、Access2000 access里面保存的数据是unicode的,在任何语言系统下都能显示。 如果数据视图查看有些字符不正常,那是因为显示所用的字体不是Unicode字体, 换用Arial Unicode MS 字体就能全部显示了。(access帮助,搜索,输入unicode,有说明) 五、Word word里的繁简转换,简体转换到繁体后,内码仍是简体中文的,其实只是简体中的繁体字。 六、ASP内部是Unicode的,所有文本都是Unicode存储的。需要时转换到指定字符集。 首先说下结论: <%@ codepage=936%>简体中文 <

大数据线性回归预测学生成绩

♀尐吖头ヾ 提交于 2019-12-22 04:34:20
通过训练集训练和测试集测试来生成多个线性模型,从而预测学生成绩,本文所有代码请点击 Github 1. 实验数据背景 1.1 数据来源 本项目的数据来源于kaggle.com,数据集的名称为Student Grade Prediction,Paulo Cortez,Minho大学,葡萄牙吉马良斯, http://www3.dsi.uminho.pt/pcortez 1.2 数据简介 该数据接近了两所葡萄牙学校的中学学生的学习成绩。数据属性包括学生成绩,人口统计学,社会和与学校相关的特征),并通过使用学校报告和调查表进行收集。提供了两个关于两个不同学科表现的数据集:数学(mat)和葡萄牙语(por) 该数据集共有396条,每列33个属性,属性简介如下: 1.学校-学生学校(二进制:“ GP”-加布里埃尔·佩雷拉(Gabriel Pereira)或“ MS”-Mousinho da Silveira) 2.性别-学生的性别(二进制:“ F”-女性或“ M”-男性) 3.年龄-学生的年龄(数字:15至22) 4.地址-学生的家庭住址类型(二进制:“ U”-城市或“ R”-农村) 5.famsize-家庭大小(二进制:“ LE3”-小于或等于3或“ GT3”-大于3) 6.Pstatus-父母的同居状态(二进制:“ T”-同居或“ A”-分开) 7.Medu-母亲的教育(数字:0-无,1

几种常见的编码方式

穿精又带淫゛_ 提交于 2019-12-22 01:56:45
为什么要编码   首先必须知道计算机是如何表示我们人类能够理解的符号的。这些符号也就是我们人类所使用的语言,由于人类语言太多,表示这些语言的符号太多,无法用计算机中一个基本的存储单元——字节(byte)来表示,因而必须要经过拆分或一些翻译工作,才能让计算机理解我们的语言。 我们可以把计算机能够理解的语言假定为英语,其他语言要能够在计算机中使用,必须的经过一次翻译,把它翻译成英语。这个翻译的过程就是编码。 所以编码的原因可以总结为以下几条。 在计算机中存储信息的最小单元是一个字节,即8个bit,所以能够表示的字符范围是 0~255个。 人类要表示的符号太多,无法用一个字节来完全表示。   要解决这个矛盾,必须要有一个新的数据结构char ,而从 char 到 byte 必须编码。 如何翻译   各种语言需要交流,经过翻译是必要的,那又如何来翻译呢?在计算机中提供了多种翻译方式,常见的有 ASCII、ISO-88591、GB23112、GBK、UTF-8、UTF-8、UTF-16等。它们都可以被看作字典,,它们规定了转换的规则,按照这个规则就可以让计算机正确地表示我们的字符。 在选择编码格式来存储汉字时,一般要考虑是存储空间还是编码的效率重要。 ASCII 码 ASCII 码总共有128个,用1个字节的低七位表示,0~31 是控制字符如换行、回车、删除等,32~126 是打印字符

文本文件与二进制文件(原作者:mjgforever)

折月煮酒 提交于 2019-12-22 00:40:08
文本文件与二进制文件 一、文本文件与二进制文件的定义 大家都知道计算机的存储在物理上是二进制的,所以文本文件与二进制文件的区别并不是物理上的,而是逻辑上的。这两者只是在编码层次上有差异。 简单来说,文本文件是基于字符编码的文件,常见的编码有ASCII编码,UNICODE编码等等。二进制文件是基于值编码的文件,你可以根据具体应用,指定某个值是什么意思(这样一个过程,可以看作是自定义编码)。 从上面可以看出文本文件基本上是定长编码的(也有非定长的编码如UTF-8),基于字符嘛,每个字符在具体编码中是固定的,ASCII码是8个比特的编码,UNICODE一般占16个比特。而二进制文件可看成是变长编码的,因为是值编码嘛,多少个比特代表一个值,完全由你决定。大家可能对BMP文件比较熟悉,就拿它举例子吧,其头部是较为固定长度的文件头信息,前2字节用来记录文件为BMP格式,接下来的8个字节用来记录文件长度,再接下来的4字节用来记录bmp文件头的长度。。。大家可以看出来了吧,其编码是基于值的(不定长的,2、4、8字节长的值都有),所以BMP是二进制文件。 二、文本文件与二进制文件的存取 文本工具打开一个文件的过程是怎样的呢?拿记事本来说,它首先读取文件物理上所对应的二进制比特流(前面已经说了,存储都是二进制的),然后按照你所选择的解码方式来解释这个流,然后将解释结果显示出来。一般来说

文本文件与二进制文件

﹥>﹥吖頭↗ 提交于 2019-12-22 00:39:50
文本文件与二进制文件 一、文本文件与二进制文件的定义 大家都知道计算机的存储在物理上是二进制的,所以文本文件与二进制文件的区别并不是物理上的,而是逻辑上的。这两者只是在编码层次上有差异。 简单来说,文本文件是基于字符编码的文件,常见的编码有ASCII编码,UNICODE编码等等。二进制文件是基于值编码的文件,你可以根据具体应用,指定某个值是什么意思(这样一个过程,可以看作是自定义编码)。 从上面可以看出文本文件基本上是定长编码的(也有非定长的编码如UTF-8),基于字符嘛,每个字符在具体编码中是固定的,ASCII码是8个比特的编码,UNICODE一般占16个比特。而二进制文件可看成是变长编码的,因为是值编码嘛,多少个比特代表一个值,完全由你决定。大家可能对BMP文件比较熟悉,就拿它举例子吧,其头部是较为固定长度的文件头信息,前2字节用来记录文件为BMP格式,接下来的8个字节用来记录文件长度,再接下来的4字节用来记录bmp文件头的长度。。。大家可以看出来了吧,其编码是基于值的(不定长的,2、4、8字节长的值都有),所以BMP是二进制文件。 二、文本文件与二进制文件的存取 文本工具打开一个文件的过程是怎样的呢?拿记事本来说,它首先读取文件物理上所对应的二进制比特流(前面已经说了,存储都是二进制的),然后按照你所选择的解码方式来解释这个流,然后将解释结果显示出来。一般来说