日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Python實現全角半角轉換的方法

系統 1696 0

本文實例講解了Python實現全角半角轉換的方法,相信對于大家的Python學習能夠起到一定的參考借鑒價值。如下所示:

一、全角半角轉換概述:

全角字符unicode編碼從65281~65374 (十六進制 0xFF01 ~ 0xFF5E)
半角字符unicode編碼從33~126 (十六進制 0x21~ 0x7E)
空格比較特殊,全角為 12288(0x3000),半角為 32 (0x20)
而且除空格外,全角/半角按unicode編碼排序在順序上是對應的
所以可以直接通過用+-法來處理非空格數據,對空格單獨處理

二、全角轉半角:

實現代碼如下:

            
def strQ2B(ustring):
  """把字符串全角轉半角"""
  rstring = ""
  for uchar in ustring:
    inside_code=ord(uchar)
    if inside_code==0x3000:
      inside_code=0x0020
    else:
      inside_code-=0xfee0
    if inside_code<0x0020 or inside_code>0x7e:   #轉完之后不是半角字符返回原來的字符
      rstring += uchar
    rstring += unichr(inside_code)
  return rstring


          

三、半角轉全角:

實現代碼如下:

            
def strB2Q(ustring):
  """把字符串半角轉全角"""
  rstring = ""
  for uchar in ustring:
    inside_code=ord(uchar)
    if inside_code<0x0020 or inside_code>0x7e:   #不是半角字符就返回原來的字符
      rstring += uchar
    if inside_code==0x0020: #除了空格其他的全角半角的公式為:半角=全角-0xfee0
      inside_code=0x3000
    else:
      inside_code+=0xfee0
    rstring += unichr(inside_code)
  return rstring


          

四、測試代碼:

            
a = strB2Q("abc12345")
print a
b = strQ2B(a)
print b


          

輸出:

            
abc12345
abc12345


          

感興趣的朋友可以調試運行一下,相信會有一定的收獲。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 射阳县| 遵化市| 关岭| 东丰县| 公安县| 陆良县| 曲靖市| 洪江市| 屏山县| 阿拉善右旗| 宁远县| 建湖县| 酒泉市| 麻城市| 乐陵市| 莱州市| 同德县| 湖北省| 大荔县| 金湖县| 铁岭县| 兴宁市| 宜城市| 台山市| 瑞金市| 雷波县| 荔波县| 两当县| 德阳市| 渭南市| 五家渠市| 汾西县| 介休市| 宕昌县| 吉安市| 临江市| 常德市| 休宁县| 吉木萨尔县| 收藏| 天门市|