码迷,mamicode.com
首页 > 编程语言 > 详细

python实现字符串中的半全角转换

时间:2018-10-11 01:44:58      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:color   int   odi   ==   class   char   for   转化   print   

  • 全角和半角的空格的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实现字符串中的半全角转换

标签:color   int   odi   ==   class   char   for   转化   print   

原文地址:https://www.cnblogs.com/Micang/p/9769921.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!