Python3 全角字符和半角字符互相转换(亲测可用)

最近在做标注文本的处理,遇到一些标注包含全角字符和半角字符,写了个python脚本进行转换,记录一下,也希望可以帮到有需要的人。

关于全角字符和半角字符的转换关系,请参考:这篇博文。

全角转半角

#全角转成半角
def full2half(s):
    n = ''
    for char in s:
        num = ord(char)
        if num == 0x3000:        #将全角空格转成半角空格
            num = 32
        elif 0xFF01 <=num <= 0xFF5E:       #将其余全角字符转成半角字符
            num -= 0xFEE0
        num = chr(num)
        n += num
    return n

半角转全角

def half2full(s):
    n = ''
    for char in s:
        num = ord(char)
        if(num == 32):             #半角空格转成全角
            num = 0x3000
        elif 33 <= num <= 126:
            num += 65248           #16进制为0xFEE0
        num = chr(num)
        n += num
    return n

你可能感兴趣的:(python,python)