Python中的Unicode编码和UTF-8编码】的更多相关文章

下午看廖雪峰的Python2.7教程,看到 字符串和编码 一节,有一点感受,结合崔庆才的Python博客 ,把这种感受记录下来: ASCII码:是用一个字节(8bit, 0-255)中的127个字母表示大小写字母,数字和一些符号.主要用来表示现代英语和西欧语言. 所以处理中文就出现问题了,因为中文处理至少需要两个字节,所以中国制定了GB2312. 所以,各国制定了各国的标准.日本制定了Shift_JIS,韩国制定了Euc-kr...那么,乱码就来了. 为了统一,Unicode诞生了.统一码把所有…
通过例子来看问题是比较容易懂的. 首先来看,下面这个是我新建的一个txt文件,名字叫做ivan_utf8.txt,然后里面随便编辑了一些东西. 然后来用控制台打开这个文件,同样也是截图: 这里就是简单的打开文本,读取文本内容,打印出来看,我们看到print出来的是和我写进去的是一样的东西.然后呢,我在对这个内容使用decode(‘gbk’),就是解编码,使用gbk方式进行解码,什么意思呢?就是说,我假设这个a是gbk方式的编码,结果是什么呢?大家都看到了,报错了哈!!!!说明这个不是gbk编码,…
基于python2.7中的字符串: unicode-->编码encode('utf-8')-->写入文件 读出文件-->解码decode('utf-8')-->unicode 在使用unicode的时候,必须注意以下的原则: 1. 程序中出现字符串的地方加前缀u,表示为unicode类型 2.不要使用str函数,在使用的时候使用unicode函数 3.不要使用string模块 4.只有在写入文件或者数据库或者网络的时候,才使用encode函数来进行编码发送:只有在把数据读取回来的时…
数据类型 number(数字) 用于存储类型,通常分为int.long.float.complex: int:32位机器上占32位,取值范围为-231 ~ 231 - 1:64位机器上占64位,取值范围为-263-263-1: long:无指定位宽,但实际使用中由于机器内存有限,故不可能无限大: float:用来处理实数,占8个字节,64位,52位表示底,11位表示指数,最后一位表示符号: complex:由实数部分和虚数部分组成: string(字符串) 用单引号'或双引号"括起来的任意文本,…
一.while循环 1.1语法 while 条件: 代码块(循环体) else: 当上面的条件为假的的时候,才会执行. 执行顺序:先判断条件是否为真,如果是真的,执行循环体,再次判断条件,直到条件不成立,停止循环. 1.2break和continue的区别 break用来停止当前本层循环. continue用来停止本次循环,会继续执行下一次. 二.格式化输出(输出带有一些格式,美观) %s:占位字符串(也可以用来占位数字,万能的) %d:占位数字 注:在字符串中如果使用了%s,%d这样的占位符,…
while循环 循环:不断重复着某件事就是循环 while 关键字 死循环:while True: ​ 循环体 while True: # 死循环# print("坚强")# print("过火")# print("单身情歌")# print("郭德纲的小曲")# print("五环之歌")# print("鸡你太美")# print("大碗宽面")# print(&…
目录 from urllib.parse import urlparse, quote, unquote, urlencode1.解析url的组成成分:urlparse(url)2.url的base64编解码:quote(url).unquote(url)3.字典变成一个字符串=&连接,并且被base64编码:urlencode(字典) from urllib.parse import urlparse, quote, unquote, urlencode print("========…
python_2.x_unicode_to_str.py a = u"中文字符"; a.encode("GBK"); #打印: '\xd6\xd0\xce\xc4\xd7\xd6\xb7\xfb' print(a.encode("GBK")); 打印: �����ַ� a.encode("utf-8") 打印: '\xe4\xb8\xad\xe6\x96\x87\xe5\xad\x97\xe7\xac\xa6' 每三个byte…
python中的str对象其实就是"8-bit string" ,字节字符串,本质上类似java中的byte[]. 而python中的unicode对象应该才是等同于java中的String对象,或本质上是java的char[]. str: s = "你好" unicode: u = u"你好“ unicode转化为str,采用encode 编码: str = u.encode('gbk') str转化为unicode ,采用decode 解码: unic…
在python中,unicode是内存编码集,一般我们将数据存储到文件时,需要将数据先编码为其他编码集,比如utf-8.gbk等. 读取数据的时候再通过同样的编码集进行解码即可. #python3 >>> s = '中国' >>> a = s.encode() >>> a b'\xe4\xb8\xad\xe5\x9b\xbd' >>> b = a.decode() >>> b '中国' 但是其实还有一种unicode…