python如何實(shí)現(xiàn)全角半角的相互轉(zhuǎn)換
轉(zhuǎn)換說(shuō)明
全角半角轉(zhuǎn)換說(shuō)明
有規(guī)律(不含空格):
- 全角字符unicode編碼從65281~65374 (十六進(jìn)制 0xFF01 ~ 0xFF5E)
- 半角字符unicode編碼從33~126 (十六進(jìn)制 0x21~ 0x7E)
特例
空格比較特殊,全角為 12288(0x3000),半角為 32(0x20)
# 正則直接把全角空格替換為半角空格
text2 = re.sub('\s+', ' ', str1)除空格外,全角/半角按unicode編碼排序在順序上是對(duì)應(yīng)的(半角 + 0x7e= 全角),所以可以直接通過(guò)用+-法來(lái)處理非空格數(shù)據(jù),對(duì)空格單獨(dú)處理。
注:
- 中文文字永遠(yuǎn)是全角,只有英文字母、數(shù)字鍵、符號(hào)鍵才有全角半角的概念,
- 一個(gè)字母或數(shù)字占一個(gè)漢字的位置叫全角,占半個(gè)漢字的位置叫半角。
字符串整個(gè)替換
def strQ2B(ustring):
"""全角轉(zhuǎn)半角"""
rstring = ""
for uchar in ustring:
inside_code = ord(uchar)
print(inside_code)
if inside_code == 12288: # 全角空格直接轉(zhuǎn)換
inside_code = 32
elif 65281 <= inside_code <= 65374: # 全角字符(除空格)根據(jù)關(guān)系轉(zhuǎn)化
inside_code -= 65248
rstring += unichr(inside_code)
return rstring
def strB2Q(ustring):
"""半角轉(zhuǎn)全角"""
rstring = ""
for uchar in ustring:
inside_code = ord(uchar)
if inside_code == 32: # 半角空格直接轉(zhuǎn)化
inside_code = 12288
elif 32 <= inside_code <= 126: # 半角字符(除空格)根據(jù)關(guān)系轉(zhuǎn)化
inside_code += 65248
rstring += unichr(inside_code)
return rstring總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
圖文詳解如何利用PyTorch實(shí)現(xiàn)圖像識(shí)別
這篇文章主要給大家介紹了關(guān)于如何利用PyTorch實(shí)現(xiàn)圖像識(shí)別的相關(guān)資料,文中通過(guò)圖文以及實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用PyTorch具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2023-04-04
python基于opencv實(shí)現(xiàn)人臉識(shí)別
這篇文章主要介紹了python基于opencv實(shí)現(xiàn)人臉識(shí)別的方法,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2021-01-01
實(shí)現(xiàn)ECharts雙Y軸左右刻度線一致的例子
這篇文章主要介紹了實(shí)現(xiàn)ECharts雙Y軸左右刻度線一致的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-05-05
Python利用ORM控制MongoDB(MongoEngine)的步驟全紀(jì)錄
MongoEngine是一個(gè)對(duì)象文檔映射器(ODM),相當(dāng)于一個(gè)基于SQL的對(duì)象關(guān)系映射器(ORM),下面這篇文章主要給大家介紹了關(guān)于Python利用ORM控制MongoDB(MongoEngine)的相關(guān)資料,需要的朋友可以參考下2018-09-09
使用Python編程分析火爆全網(wǎng)的魷魚游戲豆瓣影評(píng)
本文來(lái)為大家介紹如何使用Python爬取影評(píng)的操作,主要是爬取《魷魚游戲》在豆瓣上的一些影評(píng),對(duì)數(shù)據(jù)做一些簡(jiǎn)單的分析,用數(shù)據(jù)的角度重新審視下這部劇,有需要的朋友可以借鑒參考下2021-10-10
解決Keras的自定義lambda層去reshape張量時(shí)model保存出錯(cuò)問題
這篇文章主要介紹了解決Keras的自定義lambda層去reshape張量時(shí)model保存出錯(cuò)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-07-07

