首页 > Python判断编码的问题

Python判断编码的问题

pythondef isG(s):
    rc = s.decode("GB18030");
    for i in rc:
        k = i.encode("GB18030");
        if len(k) != 2:
            return False;
    return True;

看到这样一段代码,不是很理解。为什么要从GB18030解码成Unicode后,又编码成GB18030呢?这段程序的用意是什么?


这个程序是判断s是否都为汉字
(python解释器中实验如下)

>>>for i in rc:
...     k = i.encode("GB18030")
...     print len(k)
... 
2
>>> for i in rc:
...     print len(i)
... 
1

可见汉字GB18030编码一个字符的长度为2,从而进行判断。


判断参数s是不是都是汉字

【热门文章】
【热门文章】