python中文乱码 def decode-python处理一些乱码的中文文本时decode('utf-8')报错的处理...
用python写脚本时,遇到处理中文(乱码的中文)时,用decode("utf-8")会发现始终会报错
>>> txt_from = open("/home/love/ex130705.log")
>>> txt_from_iter= iter(txt_from)
>>> txt_proc = txt_from_iter.next().decode("utf-8", "ignore")
Traceback (most recent call last):
File "/tmp/py4049kjX", line 41, in
txt_proc = txt_from_iter.next().decode("utf-8")
File "/usr/lib/python2.7/encodings/utf_8.py", line 16, in decode
return codecs.utf_8_decode(input, errors, True)
UnicodeDecodeError: "utf8" codec can"t decode bytes in position 84-85: invalid continuation byte
欲处理的原文件中部分显示为乱码:
2013-07-05 04:20:10 192.168.1.5 GET /Portals/0/鏁欒偛淇℃伅鏂囦欢澶 校园 80 - 25.XXX.10.99 Mozilla/4.0+(compatible;+MSIE+8.0;+Windows+NT+5.1;+Trident/4.0;+Alexa+Toolbar) 404 0 2 234
2013-07-05 04:20:24 192.168.1.5 GET /Portals/0/鏁欒偛淇℃伅鏂囦欢澶 校园 80 - 25.XXX.10.99 Mozilla/4.0+(compatible;+MSIE+8.0;+Windows+NT+5.1;+Trident/4.0;+Alexa+Toolbar) 404 0 2 296
这些显示乱码的中文字符是IIS在记录日志过程中出现的。python通过decode("utf-8")解码为UTF-8时会抛出异常UnicodeDecodeError。
解决:用 decode("utf-8", "ignore")
>>>
>>> txt_proc = txt_from_iter.next().decode("utf-8", "ignore")
>>>
查看decode的帮助:
help("".decode)
decode(...)
S.decode([encoding[,errors]]) -> object
Decodes S using the codec registered for encoding. encoding defaults
to the default encoding. errors may be given to set a different error
handling scheme. Default is "strict" meaning that encoding errors raise
a UnicodeDecodeError. Other possible values are "ignore" and "replace"
as well as any other name registered with codecs.register_error that is
able to handle UnicodeDecodeErrors.
python中文乱码 def decode-python处理一些乱码的中文文本时decode('utf-8')报错的处理...相关推荐
- python导入类有红线_python踩坑系列之导入包时下划红线及报错“No module named”问题...
python踩坑系列之导入包时下划红线及报错"No module named"问题 使用pycharm编写Python时,自己写了一个包(commontool),在同级另一个路径下 ...
- python代码下出现红线_python踩坑系列之导入包时下划红线及报错“No module named”问题...
python踩坑系列之导入包时下划红线及报错"No module named"问题 使用pycharm编写Python时,自己写了一个包(commontool),在同级另一个路径下 ...
- python pip下载本地依赖包,并在离线环境中安装,并解决报错ERROR: Could not find a version that satisfies the requirement报错
文章目录 步骤1:导出依赖 步骤2:离线下载依赖包 步骤3:进入新环境使用python安装依赖 整体思路如下: 首先根据项目需要导出依赖包,由于本地的python环境中其实安装了很多乱七八糟的包,这些 ...
- python处理一些乱码的中文文本时decode('utf-8')报错的处理
2019独角兽企业重金招聘Python工程师标准>>> 用python写脚本时,遇到处理中文(乱码的中文)时,用decode('utf-8')会发现始终会报错 >>> ...
- utf-8 python 乱码prinnt u_python处理一些乱码的中文文本时decode('utf-8')报错的处理
用python写脚本时,遇到处理中文(乱码的中文)时,用decode('utf-8')会发现始终会报错 >>> txt_from = open('/home/love/ex13070 ...
- python 获取你电脑纯文本文档内容!解决IndentationError: expected an indented block报错!
1,Windows+R启动:运行 2,输入:cmd 回车打开! 3,输入python(假设你已经安装过了python) 里面还会出现版本号! 4,输入代码: 注意:如果空格缩进不对,会报错的! 比如: ...
- 解决Python使用matplotlib绘图时出现的中文标签报错问题
Python中使用matplotlib绘图时发现控制台报如下问题,可知是中文字体问题 解决方案 只需设置下参数即可,设置代码如下 import matplotlib.pyplot as pltplt. ...
- python3.7怎么使用arcpy_从Python到空间分析Arcpy|1.3.7 神啊!救救我之如何处理报错...
今天讲的是关键时候不卡壳的技能,尤其是循环语句中和数据清洗中,先假设一种情况,领导安排你把,某机构给你们的坐标x和y数据列表中的每个元素的x偏移3个单位,假设你现在已经可以掌握相关的内容了,心里想太e ...
- python之bug0:selenium使用新版edge(chrome内核) 导致的webdriver.Edge 运行报错
1.报错 2.前提 1.edge版本87.0.664.75 2.对应版本的驱动已经下载好msedgedriver.exe 3.msedgedriver.exe已经放置在相应的python的script ...
最新文章
- DataGrid中自带的分页功能的使用
- 【我的技术我做主】笑谈PHPer水平区分
- STC单片机高速下载电路改进
- puppet 基础篇
- 在hive的beeline下,Error: org.apache.thrift.transport.TTransportException: java.net.SocketException: Bro
- Web服务-Nginx网页服务
- 有趣的html代码_千万别惹程序员,否则会在代码注释里,告诉这家公司有多坑...
- 20个it专业术语_DevSecOps这个术语是否必要?
- 文件分割合并类(java)
- 华为机试HJ62:查找输入整数二进制中1的个数
- 纪念盘古工坊开发的一款手机游戏正式发布
- [Can‘t update] xxx in xxx has no tracked branch解决办法
- vue延迟渲染组件_Vue 动态组件渲染问题分析
- 46、微信-群聊列表
- php 文章分句,php 英文分句/分段落
- < mapreduce >论文学习笔记
- poi导出excel 损坏_Java使用POI生成Excel文件后打不开的问题
- KEIL设置程序起始地址无效解决方法,STM32 IAP程序起始地址
- c语言中余数恒等于1,费马小定理_KANGMANG201102_新浪博客
- 理解涡流--电磁炉只能加热铁磁性物质(磁化)
热门文章
- f12控制台如何查看consul_基于 Consul 的 Go Micro 客户端服务发现是如何实现的
- oracle数据库的诊断目标位置,刚安装的数据库卸载 指定数据库的诊断目标位置不存在...
- mysql 崩溃恢复_超详细的MySQL数据库InnoDB崩溃恢复机制总结
- 第六天,字典Dictionary
- ffmpeg 视频转ts切片 生成m3u8视频播放列表
- Java之品优购课程讲义_day17(2)
- sql不替换uid的更新数据语句
- android studio 65536错误的解决
- 揭开AS程序的外纱(四) -- 全屏模式的那点事
- angularjs探秘五 举足轻重的scope