以输入为GB18030编码字符串为例:
#把全角字符串转半角 def tobanjiao(string): ustring = string.decode('GB18030') rstring = "" for uchar in ustring: inside_code=ord(uchar) if inside_code==0x3000: inside_code=0x0020 else: inside_code-=0xfee0 if inside_code<0x0020 or inside_code>0x7e: rstring += uchar.encode('GB18030') else: rstring += unichr(inside_code).encode('GB18030') return rstring;