笔记二:python编码详解
一:学习内容
- python编码讲解
- python编码说明
- python中文乱码解决三部曲
二:python编码讲解
1. ASCII编码
美国信息交换标准代码(American Standard Code for Information Interchange,简称ASCII)是一种用于信息交换的美国标准代码,它的作用是给英文字母、数字、标点、 字符转换成计算机能识别的二进制数规定了一个大家都认可并遵守的标准。
ord('a')
ord('z')
chr(97)
chr(122)
Ascii表:
数字范围为:48—57
大写字母范围为:65—90
小写字母范围为:97—122
2. GB2312编码:适用于汉字处理、汉字通信等系统之间的信息交换
3. GBK编码:是汉字编码标准之一,是在 GB2312-80 标准基础上的内码扩展规范,使用了双字节编码
4. ANSI:是与你使用的windows操作系统的语言有关系的,像windows 7 简体中文版就是GBK(用一个字节表示英文,用两个字节表示一个中文)
5. UNICODE编码
这是一种世界上所有字符的编码,但是它没有规定的存储方式。Unicode标准也在不断发展,但最常用的是用两个字节表示一个字符(如果要用到非常偏僻的字符,就需要4个字节)。现代操作系统和大多数编程语言都直接支持Unicode。
print unichr(30000)
print unichr(30001)
6. UTF-8编码
是 Unicode Transformation Format - 8 bit 的缩写, UTF-8 是 Unicode 的一种实现方式。它是可变长的编码方式,可以使用 1~4 个字节表示一个字符,可根据不同的符号而变化字节长度。
可以这么理解:
Unicode包括了utf-8,utf-8包括了gbk,gbk包括了gb2312
三:python编码说明
1. GB2312和gbk编码
Gb2312和gbk主要用于汉字的编码,一般中国的网页gb2312或utf-8用的比较多,如果你的网页主要面对使用汉语的中国人的话,使用gb2312和gbk会非常友好,但是如果你要面向世界,可能在有些电脑的浏览器上没有这种编码,那么网页的汉字内容就会变得无法识别而乱码。
2. GB指国标的意思
3. Ascii码计算机开始是老美发明的,只支持英文,但是随着计算机发展,全世界其他国家也想用,所以发明了unicode编码,支持世界上所有的语言。
4. Utf-8一般在计算机中做存储使用,全世界通用,所有电脑都有。
5. Windows系统中文件存储时选择ansi,其实就是保存为GBK编码
6. Utf-8和GBK(GB2312)之间都必须通过Unicode才能转换
GBK、GB2312----Unicode----UTF-8
UTF-8----Unicode----GBK、GB2312
四:python中文乱码解决三步曲
1. 第一步:文件报存为utf-8
2. 第二步:添加encoding=utf-8
3. 第三步:中文前加u
注意此处的u为unicode的意思
结果:就打印出了不是乱码的中文
笔记二:python编码详解的更多相关文章
- CDN学习笔记二(技术详解)
一本好的入门书是带你进入陌生领域的明灯,<CDN技术详解>绝对是带你进入CDN行业的那盏最亮的明灯.因此,虽然只是纯粹的重点抄录,我也要把<CDN技术详解>的精华放上网.公诸同 ...
- python编码详解--转自(Alex的博客)
原文地址:http://www.cnblogs.com/alex3714/articles/7550940.html 编码回顾 在备编码相关的课件时,在知乎上看到一段关于Python编码的回答 这哥们 ...
- C#学习笔记二: C#类型详解
前言 这次分享的主要内容有五个, 分别是值类型和引用类型, 装箱与拆箱,常量与变量,运算符重载,static字段和static构造函数. 后期的分享会针对于C#2.0 3.0 4.0 等新特性进行. ...
- 转1:Python字符编码详解
Python27字符编码详解 声明 一 字符编码基础 1 抽象字符清单ACR 2 已编码字符集CCS 3 字符编码格式CEF 31 ASCII初创 311 ASCII 312 EASCII 32 MB ...
- Python字符编码详解,str,bytes
什么是明文 “明文”是可以是文本,音乐,可以编码成mp3文件.明文可以是图像的,可以编码为gif.png或jpg文件.明文是电影的,可以编码成wmv文件.不一而足. 什么是编码?把明文变成计算机语言 ...
- 转2:Python字符编码详解
1. 字符编码简介 1.1. ASCII ASCII(American Standard Code for Information Interchange),是一种单字节的编码.计算机世界里一开始只有 ...
- Python2.7字符编码详解
目录 Python2.7字符编码详解 声明 一. 字符编码基础 1.1 抽象字符清单(ACR) 1.2 已编码字符集(CCS) 1.3 字符编码格式(CEF) 1.3.1 ASCII(初创) 1.3. ...
- python爬虫---详解爬虫分类,HTTP和HTTPS的区别,证书加密,反爬机制和反反爬策略,requests模块的使用,常见的问题
python爬虫---详解爬虫分类,HTTP和HTTPS的区别,证书加密,反爬机制和反反爬策略,requests模块的使用,常见的问题 一丶爬虫概述 通过编写程序'模拟浏览器'上网,然后通 ...
- 【山外笔记-数据库】Memcached详解教程
本文打印版文档下载地址 [山外笔记-数据库]Memcached详解教程-打印版.pdf 一.Memcached数据库概述 1.Memcached简介 (1)Memcached是一个自由开源的,高性能, ...
随机推荐
- KNN PCA LDA
http://blog.csdn.net/scyscyao/article/details/5987581 这学期选了门模式识别的课.发现最常见的一种情况就是,书上写的老师ppt上写的都看不懂,然后绕 ...
- Python学习(一)——数据类型
在大学学过一点python,只学了语法,关于实际应用却没怎么用过.现在用一些python的脚本来模拟webservices,挺好用的.这个语言,还是要好好学习学习了. 目前看着教材来的,这本教材,好像 ...
- [ACM_动态规划] UVA 12511 Virus [最长公共递增子序列 LCIS 动态规划]
Virus We have a log file, which is a sequence of recorded events. Naturally, the timestamps are s ...
- django分页及搜索后如何翻页
django自带了Pagnator 导入 from django.core.paginator import Paginator, PageNotAnInteger, EmptyPage 分页 def ...
- Chrome自定义缩放百分比
我想要设置Chrome页面缩放为120%,但是Chrome只提供110% 125%,根本没有让我舒心的缩放比例. 强迫症发作,谷歌了半天没有一个很好的解决方案. 虽然也有不少第三方扩展可以自定义缩放比 ...
- EasyUi Grid以POST方式传送参数绑定
function LoadList() { $("#TableContainer").datagrid({ url: '/HM/ ...
- c# list修改某一个属性的值
public class info() { public string name{get;set;} public string age{get;set;} } list<info> li ...
- thinkphp5的mkdir() Permission denied问题
最近一直在用tp5写项目,在此遇到的问题也比较多.今天来谈谈“mkdir() Permission denied”错误. 你如果不仅仅写代码,还得部署到线上,那么这个tp5的这个错误,你有很大概率会遇 ...
- 这里给大家介绍一下通过 Wi-Fi 连接“慷慨捐赠”你的身份信息的七种方法.
这里给大家介绍一下通过 Wi-Fi 连接“慷慨捐赠”你的身份信息的七种方法和反制措施. 本文作者:黑子小盆友 1.利用免费热点 它们似乎无处不在,而且它们的数量会在接下来四年里增加三倍.但是它们当中很 ...
- JVM内存参数( -Xms -Xmx -Xmn -Xss 直接内存)
JVM调优总结 -Xms -Xmx -Xmn -Xss jvm 内存 在不同的情况下如何增大 及 PermGen space 相关 JVM日志和参数的理解 JVM崩溃Log日志分析 -Xms 为jvm ...