仓酷云
标题:
CentOS教程之python中文decode和encode转码
[打印本页]
作者:
仓酷云
时间:
2015-1-14 21:05
标题:
CentOS教程之python中文decode和encode转码
小知识:CentOS(CommunityEnterpriseOperatingSystem,中文意思是:社区企业操作系统)是Linux发行版之一。
字符串在Python外部的表现是unicode编码,是以,在做编码转换时,平日须要以unicode作为中央编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另外一种编码。
decode的感化是将其他编码的字符串转换成unicode编码,如str1.decode(gb2312),表现将gb2312编码的字符串str1转换成unicode编码。
encode的感化是将unicode编码转换成其他编码的字符串,如str2.encode(gb2312),表现将unicode编码的字符串str2转换成gb2312编码。
是以,转码的时刻必定要先弄明确,字符串str是甚么编码,然后decode成unicode,然后再encode成其他编码。
转码的时刻不由要看代码自己的编码、文件的编码,还要看掌握台的编码,这就是为何异样是一段代码,在分歧的体系(编码分歧的)中会涌现乱码的缘由,如:
我的eclipse外面代码为utf-8编码的。然后我如许写代码
s="你好"
s=s.decode(gb2312).encode(utf-8)
prints
报错:
UnicodeDecodeError:gb2312codeccantdecodebytesinposition2-3:illegalmultibytesequence
缘由:由于我的文件为UTF-8编码的。所以你想用gb2312将其转成unicode是弗成能的。
所以准确的写法应该是:
s="你好"
prints
s=s.decode(utf-8).encode(utf-8)要用UTF-8来做编码
prints
发明打印出来的是乱码那只能解释一件工作就是我的eclipse掌握台是GB2312的编码!
小知识:Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
作者:
金色的骷髅
时间:
2015-1-25 10:32
Windows?是图形界面的,Linux类似以前的?DOS,是文本界面的,如果你运行了图形界面程序X-WINDOWS后,Linux?也能显示图形界面,也有开始菜单、桌面、图标等。
作者:
因胸联盟
时间:
2015-2-2 22:00
随着Linux应用的扩展,出现了不少Linux社区。有一些非常优秀的社区往往是Linux高手的舞台,如果在探讨高级技巧的论坛张贴非常初级的问题经常会没有结果。
作者:
小魔女
时间:
2015-2-8 12:24
其次,Linux简单易学,因为我们初学者只是学的基础部分,Linux的结构体系非常清晰,再加上老师循序渐进的教学以及耐心的讲解,使我们理解起来很快,短期内就基本掌握了操作和运行模式。
作者:
柔情似水
时间:
2015-2-25 15:30
其次,Linux简单易学,因为我们初学者只是学的基础部分,Linux的结构体系非常清晰,再加上老师循序渐进的教学以及耐心的讲解,使我们理解起来很快,短期内就基本掌握了操作和运行模式。
作者:
莫相离
时间:
2015-3-8 00:49
现在的linux操作系统如redhat,难点,红旗等,都是用这么一个内核,加上其它的用程序(包括X)构成的。
作者:
海妖
时间:
2015-3-15 22:51
可以说自己收获很大,基本上完成了老师布置的任务,对于拔高的题目没有去做,因为我了解我的水平,没有时间和精力去做。?
作者:
变相怪杰
时间:
2015-3-22 18:10
尽量不要提问纯属是扯蛋.学习Linux特别是自己一个人初学入手的时候没人教很困难.当然如果可以的话平时多去买些Linux书...对学习Linux很有帮助.
作者:
活着的死人
时间:
2015-3-22 18:10
生成新的unispimsp.ksc。”另外得到回复后如果问题解决,向帮助过你的人发个说明,让他们知道问题是怎样解决的。
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2