python中Unicode,python unicode字符串

  python中Unicode,python unicode字符串

  在程序开发过程中,显示不同的语言和字符以及转换不同的字符集是非常麻烦的。在python中unicode的使用上,我对此感触颇深。所以,下面总结了一些对python中unicode字符处理的理解。

  程序在存储、传输和操作字符串时,会按照一定的字符集编码(一般是本地系统字符编码),自动将代码中编写的字符串或手工输入的字符串转换成字节码,这是对字符的“解码”,将显示的字符转换成字节码;

  在程序中显示字符时,计算机读取一串字节,选择一个合适的字符集(一般是本地系统字符集)将字节码翻译成字符集中相应的字符,这些字符一般是本地存储的字符图片,然后调用系统的显示接口将这些“图片”打印在屏幕上。这是字符的“编码”,将字节码转换成可显示的字符。如果字符在同一个字符集内解码和编码,会显示原来给定的字符,结果正常;如果不是同一个字符集,可能会出现乱码(因为同一个字节码可能对应不同字符集的不同字符,一个字符集解码后的字节码在另一个字符集编码后可能是不同的字符)。

  为了方便不同字符集编码的字符之间的转换,定义了unicode标准,即世界上所有的字符都是统一的,每个字符都被赋予一个唯一的id作为该字符的unicode编码值。在代码中写入字符或者在程序中输入字符后,可以先将字符转换成unicode字符’,这是一个‘解码’的过程;经过一系列操作,如果需要显示原字符,unicode character 会转换成对应字符集中该字符对应的字节码,然后找到对应的字符并显示出来。

  这样,不同的字符集代码通过unicode 字符链接起来。

  #通过在字符串前添加U来直接定义unicode字符串

  unicodestring=uHello world

  Utf8string= good man #可以直接这样写因为#encoding=utf-8写在py文件的开头,这样在整个py中

  #在文件中,所有字符串的编码模式都设置为utf-8。

  #将字符集编码的字符串转换成unicode字符串,即“decode”

  ustring=unicode(utf8string, utf-8 )

  Ustring # output u\u597d\u4eba

  打印类型(ustring) #输出

  #将unicode字符串转换成字符集编码的字符串,即“编码”

  unicodestring.encode(utf-8 )

  ustring.encode(utf-8 )

  Print ustring.encode(utf-8) #输出是好的,从unicode解码和编码的字符集是相同的。

  Ustring.encode (gbk) #输出是乱码,解码为unicode的字符集与从unicode编码的字符集不同。

  以上部分指的是网络自带的yy。如有错误,请指正~

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: