#!/usr/bin/env python
# -*- encoding: utf-8 -*-
def strQ2B(ustring):
"""把字符串全角转半角"""
ss = []
for s in ustring:
rstring = ""
for uchar in s:
inside_code = ord(uchar)
if inside_code == 12288: # 全角空格直接转换
inside_code = 32
elif (inside_code >= 65281 and inside_code <= 65374): # 全角字符(除空格)根据关系转化
inside_code -= 65248
rstring += chr(inside_code)
ss.append(rstring)
return ''.join(ss)
def strB2Q(ustring):
"""
半转全角
:param ustring:
:return:
"""
ss = []
for s in ustring:
rstring = ""
for uchar in s:
inside_code = ord(uchar)
# 全角空格直接转换
if inside_code == 32:
inside_code = 12288
elif (inside_code >= 33 and inside_code <= 126): # 全角字符(除空格)根据关系转化
inside_code += 65248
rstring += chr(inside_code)
ss.append(rstring)
return ''.join(ss)
if __name__ == '__main__':
a = strB2Q("深桑达A")
print(a)
b = strQ2B('深桑达A特 力A')
print(b)
b = strQ2B('深桑达A特 力A')
print(b.replace(' ', ''))