python_笔记_unicode
来源:互联网 发布:相对不确定度的算法 编辑:程序博客网 时间:2024/05/13 20:57
字符串还有一个编码问题。
因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),0 - 255被用来表示大小写英文字母、数字和一些符号,这个编码表被称为ASCII编码,比如大写字母 A 的编码是65,小写字母 z 的编码是122。
如果要表示中文,显然一个字节是不够的,至少需要两个字节,而且还不能和ASCII编码冲突,所以,中国制定了GB2312编码,用来把中文编进去。
类似的,日文和韩文等其他语言也有这个问题。为了统一所有文字的编码,Unicode应运而生。Unicode把所有语言都统一到一套编码里,这样就不会再有乱码问题了。
Unicode通常用两个字节表示一个字符,原有的英文编码从单字节变成双字节,只需要把高字节全部填为0就可以。
因为Python的诞生比Unicode标准发布的时间还要早,所以最早的Python只支持ASCII编码,普通的字符串'ABC'在Python内部都是ASCII编码的。
Python在后来添加了对Unicode的支持,以Unicode表示的字符串用u'...'表示,比如:
print u'中文'
中文
如果中文字符串在Python环境下遇到 UnicodeDecodeError,这是因为.py文件保存的格式有问题。可以在第一行添加注释
# -*- coding: utf-8 -*-
目的是告诉Python解释器,用UTF-8编码读取源代码。然后用Notepad++ 另存为... 并选择UTF-8格式保存。
注意:python与或非是 and or not
因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),0 - 255被用来表示大小写英文字母、数字和一些符号,这个编码表被称为ASCII编码,比如大写字母 A 的编码是65,小写字母 z 的编码是122。
如果要表示中文,显然一个字节是不够的,至少需要两个字节,而且还不能和ASCII编码冲突,所以,中国制定了GB2312编码,用来把中文编进去。
类似的,日文和韩文等其他语言也有这个问题。为了统一所有文字的编码,Unicode应运而生。Unicode把所有语言都统一到一套编码里,这样就不会再有乱码问题了。
Unicode通常用两个字节表示一个字符,原有的英文编码从单字节变成双字节,只需要把高字节全部填为0就可以。
因为Python的诞生比Unicode标准发布的时间还要早,所以最早的Python只支持ASCII编码,普通的字符串'ABC'在Python内部都是ASCII编码的。
Python在后来添加了对Unicode的支持,以Unicode表示的字符串用u'...'表示,比如:
print u'中文'
中文
如果中文字符串在Python环境下遇到 UnicodeDecodeError,这是因为.py文件保存的格式有问题。可以在第一行添加注释
# -*- coding: utf-8 -*-
目的是告诉Python解释器,用UTF-8编码读取源代码。然后用Notepad++ 另存为... 并选择UTF-8格式保存。
注意:python与或非是 and or not
0 0
- python_笔记_unicode
- C/C++_unicode相关代码笔记
- python_学习笔记0802
- python_学习笔记0803
- python_学习笔记0810
- python_学习笔记0816
- python_学习笔记0817
- python_学习笔记0817
- python_学习笔记0824
- python_学习笔记0825
- python_学习笔记0829
- Python_学习笔记
- python_笔记5_set
- python_笔记day1
- [学习笔记]Python_数据类型
- [学习笔记]Python_变量
- [学习笔记]Python_字符串
- python_变量+循环学习笔记
- java代码中实现android背景选择的selector-StateListDrawable的应用
- 亚线性空间算法-水库抽样算法
- 数据库五大约束
- 通过微信分享链接,后面被加上from=singlemessage&isappinstalled=1导致网页打不开
- LintCode: 带环链表 II
- python_笔记_unicode
- Netty in Action (二十二) 第十一章节 第二部分 Netty提供的一些原生Handler和codecs
- IOS数组相关
- MD5 16与32位
- linux中root密码忘记如何修改
- struts spring integration and test using junit4
- d3.jd——监听鼠标事件
- 所有的电脑桌面图标点不开怎么办???
- C语言do while语句