欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python如何實現(xiàn)全角半角的相互轉(zhuǎn)換

 更新時間:2023年11月08日 09:34:20   作者:西奧斯  
這篇文章主要介紹了python如何實現(xiàn)全角半角的相互轉(zhuǎn)換方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

轉(zhuǎn)換說明

全角半角轉(zhuǎn)換說明

有規(guī)律(不含空格):

  • 全角字符unicode編碼從65281~65374 (十六進制 0xFF01 ~ 0xFF5E)
  • 半角字符unicode編碼從33~126 (十六進制 0x21~ 0x7E)

特例

空格比較特殊,全角為 12288(0x3000),半角為 32(0x20)

# 正則直接把全角空格替換為半角空格
text2 = re.sub('\s+', ' ', str1)

除空格外,全角/半角按unicode編碼排序在順序上是對應(yīng)的(半角 + 0x7e= 全角),所以可以直接通過用+-法來處理非空格數(shù)據(jù),對空格單獨處理。

注:

  • 中文文字永遠是全角,只有英文字母、數(shù)字鍵、符號鍵才有全角半角的概念,
  • 一個字母或數(shù)字占一個漢字的位置叫全角,占半個漢字的位置叫半角。

字符串整個替換

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é)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 使用Python實現(xiàn)有趣的鎖屏小工具

    使用Python實現(xiàn)有趣的鎖屏小工具

    這篇文章主要為大家詳細介紹了如何使用Python實現(xiàn)有趣的鎖屏小工具,這樣再也不用擔心因為沒有鎖屏被扣工資啦,打工人快跟隨小編一起學習一下吧
    2023-12-12
  • Python學習之集合的常用方法總結(jié)

    Python學習之集合的常用方法總結(jié)

    集合并不是一種數(shù)據(jù)處理類型,而是一種中間類型。集合(set)是一個無序、不重復(fù)的元素序列,經(jīng)常被用來處理兩個列表進行交并差的處理性。本文將詳細講解集合的一些常用方法,感興趣的可以了解一下
    2022-03-03
  • 使用Python在Word表格中插入或刪除行或列的幾種方法

    使用Python在Word表格中插入或刪除行或列的幾種方法

    Word文檔中的表格可以用于組織和展示數(shù)據(jù),在實際應(yīng)用過程中,有時為了調(diào)整表格的結(jié)構(gòu)或適應(yīng)不同的數(shù)據(jù)展示需求,我們可能會需要插入、刪除行或列,本文提供了幾種使用Python在Word表格中插入或刪除行、列的方法供參考
    2024-07-07
  • Pytorch實現(xiàn)的手寫數(shù)字mnist識別功能完整示例

    Pytorch實現(xiàn)的手寫數(shù)字mnist識別功能完整示例

    這篇文章主要介紹了Pytorch實現(xiàn)的手寫數(shù)字mnist識別功能,結(jié)合完整實例形式分析了Pytorch模塊手寫字識別具體步驟與相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2019-12-12
  • Python3中字符串的常用操作方法及查找方法

    Python3中字符串的常用操作方法及查找方法

    這篇文章主要介紹了Python3中字符串的常用操作方法及查找方法,文章通過圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • Python 3中print函數(shù)的使用方法總結(jié)

    Python 3中print函數(shù)的使用方法總結(jié)

    這篇文章主要給大家總結(jié)介紹了關(guān)于Python 3中print函數(shù)的使用方法,python3中的print函數(shù)和之前版本的用法相差很多,本文通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起看看吧。
    2017-08-08
  • 利用Python的tkinter模塊實現(xiàn)界面化的批量修改文件名

    利用Python的tkinter模塊實現(xiàn)界面化的批量修改文件名

    這篇文章主要介紹了利用Python的tkinter模塊實現(xiàn)界面化的批量修改文件名,用Python編寫過批量修改文件名的腳本程序,代碼很簡單,運行也比較快,詳細內(nèi)容需要的小伙伴可以參考一下下面文章內(nèi)容
    2022-08-08
  • python加速器numba使用詳解

    python加速器numba使用詳解

    本文主要介紹了python加速器numba使用詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-02-02
  • python中關(guān)于CIFAR10數(shù)據(jù)集的使用

    python中關(guān)于CIFAR10數(shù)據(jù)集的使用

    這篇文章主要介紹了python中關(guān)于CIFAR10數(shù)據(jù)集的使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 使用Python IDLE進行Debug調(diào)試的圖文步驟

    使用Python IDLE進行Debug調(diào)試的圖文步驟

    本文主要介紹了使用Python IDLE進行Debug調(diào)試的圖文步驟,文中通過圖文介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2025-02-02

最新評論