最近在做NLP相关东西,需要从数据库和文本等多个源读取文本数据(中文),这就涉及到了文本编码的转换,小菜初次碰到这个问题,所以研究了一下,记录下来。
- 关于encode和decode
decode的作用是将其他编码的字符串转换成unicode编码,如str1.decode('gb2312'),表示将gb2312编码的字符串str1转换成unicode编码。
encode的作用是将unicode编码转换成其他编码的字符串,如str2.encode('gb2312'),表示将unicode编码的字符串str2转换成gb2312编码。
- 工作中碰到的case:
- 从停用词文件中读中文词,并且跟jieba分词list做比较,需要对单词decode('utf-8')
- 从数据库中读中文并且跟中文比较需要对中文encode('utf-8')
- ps:后面碰到问题在补充,添加一个链接Python字符串的encode与decode