python半角全角转换
2014-05-08 10:21
429 查看
在工作中遇到了query分词和文本分词半全角不一致问题,在网上搜索了半天,试了好多都没搞定,最后终于搞定了,代码是网上找到的,但是忘记链接了,见谅。
python半角全角转换代码:
def strQ2B(ustring):
rstring = ""
for uchar in ustring:
inside_code=ord(uchar)
if inside_code == 12288:
inside_code = 32
elif (inside_code >= 65281 and inside_code <= 65374):
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:
inside_code = 12288
elif inside_code >= 32 and inside_code <= 126:
inside_code += 65248
rstring += unichr(inside_code)
return rstring
在上面的代码中,输入参数必须是unicode编码的,所以在实际调用的时候,需要先进行编码转换,完成半角、全角转换后在转换为需要的编码。
在我的使用中,所有的文本输入编码都是gbk编码,所以调用的过程如下:
#半角转全角
全角转半角:
input = file('result')
for line in input:
line = line.strip().decode('gbk')
line = strQ2B(line).encode('gbk')
print line
python半角全角转换代码:
def strQ2B(ustring):
rstring = ""
for uchar in ustring:
inside_code=ord(uchar)
if inside_code == 12288:
inside_code = 32
elif (inside_code >= 65281 and inside_code <= 65374):
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:
inside_code = 12288
elif inside_code >= 32 and inside_code <= 126:
inside_code += 65248
rstring += unichr(inside_code)
return rstring
在上面的代码中,输入参数必须是unicode编码的,所以在实际调用的时候,需要先进行编码转换,完成半角、全角转换后在转换为需要的编码。
在我的使用中,所有的文本输入编码都是gbk编码,所以调用的过程如下:
#半角转全角
lines = open(r'tmp','r').readlines() for line in lines: line = line.decode('gbk') print strB2Q(line).encode('gbk')
全角转半角:
input = file('result')
for line in input:
line = line.strip().decode('gbk')
line = strQ2B(line).encode('gbk')
print line
相关文章推荐
- Python实现全角半角转换的方法
- python中半角与全角互相转换
- 【python脚本收集】全角半角转换
- python 实现全角半角的相互转换
- python全角和半角之间的转换
- 【python】 全角半角转换
- [Python]全角半角转换的Python实现
- 如何理解python3的unicode,以及全角半角转换
- python实现全角半角的相互转换
- 全角半角转换的Python实现
- python实现全角半角的相互转换
- Python实现全角半角转换的方法
- C# 用VB.NET函数库 实现全角半角转换
- 关于java中半角与全角相互转换
- word中将半角标点符号(如双引号等)转换为全角
- 用JS把全角转换为半角
- Java工具类——全角半角字符相互转换
- C#半角,全角转换
- 全角转换半角
- 转:Sqlserver 全角/半角转换