最近在做标注文本的处理,遇到一些标注包含全角字符和半角字符,写了个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