美文网首页
使用Unicode码进行文字处理

使用Unicode码进行文字处理

作者: 青椒rose炒饭 | 来源:发表于2019-06-28 20:18 被阅读0次

什么是Unicode码

每个字符分配一个编号表示为\uxxxx其中的xxxx为十六进制数。程序中可以很方便的操作,但是如果是写到文件或者终端上将被编码为字节流。字符是可以实现一个或者多个字形的抽象实体,一个字体是字符到字形的映射,只有字形能够显示出来。

从文件中提取已编码文本

读取其他编码的文件是用open函数不能正常打开,需要使用模块codecs,使用模块下的open方法,在参数encoding中指定编码就能正常显示文件。代码如下,样本文件是使用的latin2编码。

import nltk

#获取文件所在的路径
path = nltk.data.find('corpora/unicode_samples/polish-lat2.txt')
print(path)
'''
    #使用open函数不能正常打开文件
    f = open(path)
    contant = f.read()
    print(contant)
'''
#使用编码模块打开文件
import codecs
#使用编码模块打开文件,提前预知编码格式为latin2
f = codecs.open(path,'r',encoding="latin2")
#逐行输出文件内容
for line in f:
    print(line)

#设置字符串为unicode编码
text = u'你好世界,你好python'
print(text)

#字母a的Unicode编码 ascll码也为97,所以就英语来说ASCII和Unicode码是兼容的
#61位97的十六进制
char = u'\u0061'
print(char)

#获得字符的Unicode编码
print('a的Unicode编码',ord('a'))

现在就知道了两种指定为Unicode编码的方式,1、在字符或者字符串前面使用u
2、直接使用\u + 编码点
如a的编码是97转换为十六进制为61则a的Unicode编码就为\u0061

相关文章

  • 使用Unicode码进行文字处理

    什么是Unicode码 每个字符分配一个编号表示为\uxxxx其中的xxxx为十六进制数。程序中可以很方便的操作,...

  • ucs

    unicode编码方式 统一码(unicode)的编码方式使用的是通用字符集UCS unicode字符的平面映射本...

  • 字符串扩展

    字符串扩展 unicode支持\u{unicode码点} 表示unicode字符codePointAt() 字符码...

  • Python字符串前加字母u或者r区别

    Python中,u表示unicode string,表示使用unicode进行编码,没有u表示byte strin...

  • JavaScript中字符串与Unicode编码的互相转换

    字符串转unicode码"中".charCodeAt(0); // 20013 unicode码转字符中Stri...

  • Unicode

    专业术语 统一码/国际通用码(Unicode)统一码/国际通用码联盟(Unicode Consortium)字符编...

  • Unicode相关

    我对Unicode的所感所悟 Unicode是统一码,也称国际通用码。是由Unicode Consortium,即...

  • iOS - 判断 NSString 字符串是否包含 Emoji

    第一种方案:模糊匹配 这种方式使用 Unicode 码点进行匹配,具体的编码原理和编码转换原理可以参考这篇文章:i...

  • Unicode

    Unicode Unicode中文名为统一码或者国际通用码,为文字系统编码之业界标准,由Unicode Conso...

  • UNICODE字符集和代码点

    了解UNICODE之前需要知道ASCII码,扩展ASCII码 UNICODE代码表 这是一个有用的参考 http:...

网友评论

      本文标题:使用Unicode码进行文字处理

      本文链接:https://www.haomeiwen.com/subject/yqxecctx.html