博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python任意字符集转换
阅读量:7082 次
发布时间:2019-06-28

本文共 1014 字,大约阅读时间需要 3 分钟。

在python处理文本的过程中,经常会有文本字符集转换的情况,

而我们希望用一个方法,不用关心文本原本的字符集是什么样的,直接转换成想要的任何字符集就可以了。

方法一:

import chardet  def convert_encoding(data,new_coding='UTF-8'):  # 任意字符集转换  encoding = chardet.detect(data)['encoding']  if new_coding.upper() != encoding.upper():    data  = data.decode(encoding,data).encode(new_coding)  return data

方法二:

import icu  def convert_encoding2(data,new_coding='UTF-8'):  encoding = icu.CharsetDetector(data).detect().getName()    # encoding = chardet.detect(content)['encoding']  if new_coding.upper() != encoding.upper():    # data  = data.decode(encoding,data).encode(new_coding)    data = unicode(data,coding).encode(new_coding)  return data

方法三:

import cchardetdef convert_encoding3(data,new_coding='UTF-8'):  encoding = cchardet.detect(data)['encoding']  if new_coding.upper() != encoding.upper():    data  = data.decode(encoding,data).encode(new_coding)  return data

使用方法:

此处使用方法一

#转换成utf-8convert_encoding(data,'utf-8')#转抱成GBK  convert_encoding(data,'gbk')#转抱成GB2312convert_encoding(data,'gbk')

转载地址:http://seoml.baihongyu.com/

你可能感兴趣的文章
SSL/TLS协议安全系列:CBC 模式的弱安全性介绍(一)
查看>>
几种通用防注入程序绕过方法
查看>>
Clickjacking简单介绍
查看>>
Android Tangram模型:手把手带你学习淘宝、天猫都在用的UI框架模型
查看>>
Android P 开发者预览版发布,细数开发者最不能错过的新特性
查看>>
SpringBoot使用JdbcTemplate
查看>>
flutter之从零开始搭建(三)之 网络请求
查看>>
AI开发者福音!阿里云推出国内首个基于英伟达NGC的GPU优化容器
查看>>
android中的用到的设计模式
查看>>
《JavaScript设计模式与开发实践》基础篇(1)—— this、call 和 apply
查看>>
Android TransactionTooLargeException 解析,思考与监控方案
查看>>
Android音频处理知识(一)MediaRecorder录制音频
查看>>
SpringBoot+Vue.js前后端分离实现大文件分块上传
查看>>
Node.js环境性能监控
查看>>
CSS在没有设置高度的情况下如何让同级元素高度相等?
查看>>
1小时学会:最简单的iOS直播推流(五)yuv、pcm数据的介绍和获取
查看>>
spring微服务架构设计与轻量级微服务架构及最佳部署
查看>>
Android多线程之Handler、Looper与MessageQueue源码解析
查看>>
Java操作Excel文件
查看>>
十分钟了解HTTPS
查看>>