为了账号安全,请及时绑定邮箱和手机立即绑定

以下unicode()函数作用到底是什么?

以下unicode()函数作用到底是什么?

ITMISS 2022-02-24 00:15:06
def ConvertStrData(self, strData):myCodec='iso8859'sdata=''if True == isinstance(strData, str):sdata=unicode(strData,myCodec) //这句话到底是什么意思?elif True == isinstance(strData, unicode):sdata=strData.encode('utf8')sdata=sdata.decode(myCodec)else:numtmp=0if True == isinstance(strData, float):numtmp = int(strData)else:numtmp = strDatasdata = str(numtmp)sdata=unicode(sdata,myCodec)return sdata
查看完整描述

2 回答

?
MYYA

TA贡献1868条经验 获得超4个赞

unicode函数按它的上下文来理解应该说就是这一句话的意思sdata=sdata.decode(myCodec)

这个ConvertStrData函数应该是将所有的str ,unicode, int,float数据类型都转换成utf-8,然后再直接解码显示出来。应该是做特殊用途的。可能是教学目的。也可能是编辑器的需要,或者说调试的需要。

一般不需要这么麻烦。似乎有一个"%b"%strData的办法直接实现这个功能。不过我不记得格式符了。 应该不是%b

在python中unicode也只是一种特殊的编码格式存放。我印象中似乎用的是utf-16,不过有些人说python3里用的是utf-8。

不过在逻辑上unicode是没有编码的格式。进行I/O输出的时候一定要做encode("utf-8")这样类似的操作。

不过unicode是python内部的函数。如果它这么用,显然是自己重新定义了unicode。

如果它没有重新定义,那么它的程序逻辑中有几处就是错的。 不一致。



查看完整回答
反对 回复 2022-02-28
?
小唯快跑啊

TA贡献1863条经验 获得超2个赞

就是返回按照myCodec='iso8859'解释的unicode字符串。

查看完整回答
反对 回复 2022-02-28
  • 2 回答
  • 0 关注
  • 288 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号