python实现字符串中的半全角转换
Posted 米仓山下
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python实现字符串中的半全角转换相关的知识,希望对你有一定的参考价值。
- 全角和半角的空格的Unicode值相差12256
- 除空格外的全角和半角的Unicode值相差65248
# -*- coding: utf-8 -*- def strQ2B(ustring): """全角转半角""" rstring = "" for uchar in ustring: inside_code=ord(uchar) if inside_code == 12288: #全角空格直接转换,全角和半角的空格的Unicode值相差12256 inside_code = 32 elif (inside_code >= 65281 and inside_code <= 65374): #全角字符(除空格)根据关系转化,除空格外的全角和半角的Unicode值相差65248 inside_code -= 65248 rstring += unichr(inside_code) return rstring def strB2Q(ustring): """半角转全角""" rstring = "" for uchar in ustring: inside_code=ord(uchar) if inside_code == 32: #半角空格直接转化,全角和半角的空格的Unicode值相差12256 inside_code = 12288 elif inside_code >= 32 and inside_code <= 126: #半角字符(除空格)根据关系转化,除空格外的全角和半角的Unicode值相差65248 inside_code += 65248 rstring += unichr(inside_code) return rstring b = strQ2B("mn 123abc全角转半角".decode(‘utf-8‘)) print b c = strB2Q("mn123abc半角转全角".decode(‘utf-8‘)) print c
以上是关于python实现字符串中的半全角转换的主要内容,如果未能解决你的问题,请参考以下文章