1.他最后一句话说,用Utf-8编码,使得转义字符被消除了。为什么,没懂2.content=content.decode("ascii","ignore")为何他转换成utf-8后又转成ascii?谢谢了
1 回答
哆啦的时光机
TA贡献1779条经验 获得超6个赞
泻药,最近比较忙,刚闲下来。
第一个问题为什么utf8能消除转义字符?
呃,其实书里这句话不对,消除转义字符的不是这行代码,而是下一行代码的ignore参数,转义字符因为不能被ascii decode,如果不加ignore就会报错,加了ignore就会被忽略。
contents是一个str,由一系列不可改变的Unicode字符组成,本身不能被decode,用utf8 encode之后转为bytes才可以被decode。
encode是转为计算机能理解的二进制数,bytes就是一系列不可改变的介于0-255之间的数字。decode就是转为我们可以理解的字符。
ascii字符集远小于unicode字符集,用ascii decode的时候那些不在ascii字符集的字符就会导致报错,设了ignore参数后就会被忽略。
这算是一个trick吧233。
话说你这本书是谁写的,这种错误太不严谨了。
添加回答
举报
0/150
提交
取消