Python 字符集
什么是字符?
1.在Python中,字符串中的内容都是字符.
2.什么是字符编码(encode)和字符集(charset)?
- 计算机只能识别数值,而字符不能识别,为了让计算机能处理字符,必须将字符和数值产生一个映射关系.(即:给某个字符指定一个数值,计算机就用这个数值表示这个字符了.)这个映射关系,称为字符集. 例如: ASCII字符集,gbk字符集,Shift_JIS字符集.
- 这些字符集通常不互相通用,比如:3000这个数值在gbk中表示一个符号,在其他的字符集中有可能表示的就是完全不同的字符.
- 为了终止这种混乱的场面,出现了Unicode字符集.
- Unicode字符集也是一种字符和数值对应的关系表.只不过它里面保存的数值比较多,目前已经达到了一百多万个.已经能表示世界上所有能见到的语言和符号了.
3.字符编码:将字符集中的数值转换成字节的过程.
- 但是和ASCII字符集,gbk字符集,Shift_JIS字符集不同的是:
- Unicode字符集提供了多种实现方案:
- UTF8,UTF16,UTF32等等.
- UTF:Unicode Translate
- Format,Unicode转换格式
- 其中,UTF16用固定的2个字节表示Unicode字符.
- UTF32用固定的4个字节表示Unicode字符. 二者都不太常用.
4.而UTF8是一种变长的编码方案(在互联网领域最常用):
- 能用一个字节表示的,就用一个字节表示.
- 表达不了的,用两个字节表示.
- 实在不行的,用三个字节表示.
- 还有一些比较少用的,用四个字节表示.
- 中文一般用三个字节表示.
- Unicode字符集和UTF8编码对应的关系:
Python 字符集的更多相关文章
- python字符集的转换(mysql数据乱码的处理)
本文参考:http://blog.csdn.net/crazyhacking/article/details/39375535 chardet模块:http://blog.csdn.net/tianz ...
- python字符集选择
# coding=utf8 或者 # -*- coding:utf-8 -*- 在python2 中默认是ASCII码的字符集,但可以引入其他的字符集 这个需要在头信息中引入: 而在python3中 ...
- Python字符集
字符集: 美国:ASCII 需要8bit表示 英文字母一个字节,不支持中文中国:GBK 英文字母一个字节,汉字占两个字节万国:un ...
- python 字符集转换-灰常慢
代码 def toUni (text): str = text try: charstyle = chardet.detect(text) # print 'confidence: ', charst ...
- python print 中文重定向失败
一直以来认为解决python字符集编码,不一定需要通过sys.setdefaultencoding.因为既然python实现过程中,默认禁用了该操作,说明是不推荐的. 通过不断的字符转换,也cover ...
- 附录:python and numpy
http://cs231n.github.io/python-numpy-tutorial/ Python is a great general-purpose programming languag ...
- [py]文件 字符串 列表特例
文件 readlines 列表 readline 字符串 read 字符串 列表---拆分---小列表 f=file('test.log','r') for line in f.readlin ...
- 爬虫新手学习2-爬虫进阶(urllib和urllib2 的区别、url转码、爬虫GET提交实例、批量爬取贴吧数据、fidder软件安装、有道翻译POST实例、豆瓣ajax数据获取)
1.urllib和urllib2区别实例 urllib和urllib2都是接受URL请求相关模块,但是提供了不同的功能,两个最显著的不同如下: urllib可以接受URL,不能创建设置headers的 ...
- 字符集编码与Python(二)Unicode与utf-8
Python中的Unicode和utf-8 上一篇提过了字符集的历史其中简单的讲解了Unicode与utf-8的关系,简单的总结一下: utf-8和utf-16 .utf-32是一类,实现的功能是 ...
随机推荐
- 安装Visual Studio IntelliCode提供代码智能提示AI
The Visual Studio IntelliCode extension provides AI-assisted development features for Python, TypeSc ...
- 2018的Java
少用复制黏贴 程序员很多时候都习惯复制黏贴,这里复制一点,那里复制一点,拼拼凑凑的搞出了一段代码.这是一种常态,毕竟没有必要重复造轮子,在开发的时候,讲究的是效率,讲究速度,有时候也是不得不这样做.但 ...
- 2018-2019-2 20165315《网络对抗技术》Exp9 Web安全基础
2018-2019-2 20165315<网络对抗技术>Exp9 Web安全基础 目录 一.实验内容 二.实验步骤 1.Webgoat前期准备 2.SQL注入攻击 Command Inje ...
- Gamma展示
团队成员简介 团队成员 角色 个人博客地址 刘峻辰 后端开发 刘峻辰 焦云鹏 后端开发 焦云鹏 赵智源 测试&服务器部署 赵智源 肖萌威 前端开发 肖萌威 杨亦鑫 前端开发 杨亦鑫 戴荣 UI ...
- Pycharm 个人认为舒服漂亮又好用的主题风格
又开始和code打交道了系列…… 实验室换了新电脑,故而,重新安装了各种软件,乃至重新配置 Pycharm主题,找了好久,终于找到,想着应该mark一下,以备下次需要. 个人认为 Monokai 这 ...
- CentOS7-Docker 安装 Gitlab详细篇
官方教程 https://docs.gitlab.com/omnibus/docker/ 建议虚拟机内存2G以上 搜索镜像 docker search gitlab 下载镜像文件 docker pul ...
- docker封装mysql镜像
一.概述 直接使用官方的镜像 docker pull mysql:5.7 但是mysqld.cnf并没有优化,还是默认的. 二.封装镜像 创建目录 # dockerfile目录 mkdir -p /o ...
- 动态代理(一)——JDK中的动态代理
在开始动态代理的描述之前,让我们认识下代理.代理:即代替担任执行职务.在面向对象世界中,即寻找另一个对象代理目标对象与调用者交互.Java中分为静态代理和动态代理.这里对于静态代理不做详述.它们之间的 ...
- 前端开发常用 JS 方法
1,获取文件本地url,在上传之前预览 /** * 获取图片嗯滴url,在上传之前预览 * @param file 选择的图片文件 * @returns {*} url */ getFileLocat ...
- C#实现电信短信SMGP协议程序源码
此程序为中国电信SMGP协议程序接口,适合在中国电信申请了短信发送端口的公司使用. 短信群发已经成为现在软件系统.网络营销等必不可少的应用工具.可应用在短信验证.信息群发.游戏虚拟商品购买.事件提醒. ...