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

利用python3隨機生成中文字符的實現(xiàn)方法

 更新時間:2017年11月24日 10:48:28   作者:雷子-LL  
最近在學(xué)習(xí)python3,發(fā)現(xiàn)網(wǎng)上關(guān)于ptyhon3隨機生成中文的資料非常少,所以決定將自己實現(xiàn)的方法分享下,下面這篇文章主要給大家介紹了關(guān)于利用python3隨機生成中文字符的實現(xiàn)方法,需要的朋友可以參考借鑒,下面來一起看看吧。

前言

運行環(huán)境在Python3.6下,Python2的解決方案網(wǎng)上有很多.,想學(xué)習(xí)python2實現(xiàn)的朋友們可以參考這篇文章:http://www.dbjr.com.cn/article/34884.htm,下面來一起看看詳細的介紹吧。

第一種方法:Unicode碼

在unicode碼中,漢字的范圍是(0x4E00, 9FBF)

import random

def Unicode():
 val = random.randint(0x4e00, 0x9fbf)
 return chr(val)

這個方法比較簡單,但是有個小問題,unicode碼中收錄了2萬多個漢字,包含很多生僻的繁體字.

第二種方法:GBK2312

gbk2312對字符的編碼采用兩個字節(jié)相組合,第一個字節(jié)的范圍是0xB0-0xF7, 第二個字節(jié)的范圍是0xA1-0xFE.
對GBK2312編碼方式詳細的解釋請參看GBK2312編碼

import random

def GBK2312():
 head = random.randint(0xb0, 0xf7)
 body = random.randint(0xa1, 0xfe)
 val = f'{head:x}{body:x}'
 str = bytes.fromhex(val).decode('gb2312')
 return str

GBK2312收錄了6千多常用漢字.兩種方法的取舍就看需求了.

下面來給大家詳細介紹下關(guān)于Python基礎(chǔ)知識之encode和decode函數(shù)的相關(guān)內(nèi)容,通過下面的簡單介紹,對大家理解上面的實現(xiàn)方法具有一定的參考價值,下面來一起看看吧。

ptyhon encode和decode函數(shù)

Python2.x中默認(rèn)的編碼的基礎(chǔ)類型是unicode編碼的類型,在Python3.x才轉(zhuǎn)化為基于unicode的字符串。
那么我們在Python2.x的學(xué)習(xí)中就會遇到各種各樣的編碼問題,encode和decode函數(shù)就是很好的幫我們解決這樣問題的工具。
下面的程序中有詳細的介紹和例子!~

在Python2.x中:

u = u'中文' #顯示指定unicode類型對象u 
str = u.encode('gb2312') #以gb2312編碼對unicode對像進行編碼 
str1 = u.encode('gbk') #以gbk編碼對unicode對像進行編碼 
str2 = u.encode('utf-8') #以utf-8編碼對unicode對像進行編碼 
u1 = str.decode('gb2312')#以gb2312編碼對字符串str進行解碼,以獲取unicode 
u2 = str.decode('utf-8')#如果以utf-8的編碼對str進行解碼得到的結(jié)果,將無法還原原來的unicode類型 

在Python3.x中:

u = '中文' #指定字符串類型對象u 
str = u.encode('gb2312') #以gb2312編碼對u進行編碼,獲得bytes類型對象str 
u1 = str.decode('gb2312')#以gb2312編碼對字符串str進行解碼,獲得字符串類型對象u1 
u2 = str.decode('utf-8')#如果以utf-8的編碼對str進行解碼得到的結(jié)果,將無法還原原來的字符串內(nèi)容 

但是我們在讀取、寫入文件的時候就要注意以文件的格式來判斷用什么方式來操作了,txt文件默認(rèn)都是utf-8當(dāng)然你也可以自己設(shè)定編碼格式。

我們在對txt文件進行操作時,最好都將編碼格式轉(zhuǎn)化為utf-8來方便操作吧!~

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。  

相關(guān)文章

  • Python實現(xiàn)簡單生成驗證碼功能【基于random模塊】

    Python實現(xiàn)簡單生成驗證碼功能【基于random模塊】

    這篇文章主要介紹了Python實現(xiàn)簡單生成驗證碼功能,結(jié)合實例形式分析了Python基于random模塊生成隨機字符串的相關(guān)操作技巧,需要的朋友可以參考下
    2018-02-02
  • Python內(nèi)存管理方式和垃圾回收算法解析

    Python內(nèi)存管理方式和垃圾回收算法解析

    這篇文章主要介紹了Python內(nèi)存管理方式和垃圾回收算法解析,介紹了傳統(tǒng)的垃圾回收機制,其工作方法,finalizer的問題等相關(guān)內(nèi)容,具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • Python運算符重載用法實例分析

    Python運算符重載用法實例分析

    這篇文章主要介紹了Python運算符重載用法,實例分析了幾種常見的Python運算符重載的使用技巧,需要的朋友可以參考下
    2015-06-06
  • Python求最小公倍數(shù)4種方法總結(jié)

    Python求最小公倍數(shù)4種方法總結(jié)

    這篇文章主要給大家介紹了關(guān)于Python求最小公倍數(shù)4種方法的相關(guān)資料,最小公倍數(shù)不可以像最大公約數(shù)那樣直接利用輾轉(zhuǎn)相除法求出,但可以借助輾轉(zhuǎn)相除法求得的最大公約數(shù)來求最小公倍數(shù),需要的朋友可以參考下
    2023-10-10
  • [機器視覺]使用python自動識別驗證碼詳解

    [機器視覺]使用python自動識別驗證碼詳解

    這篇文章主要介紹了python自動識別驗證碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Python ORM框架SQLAlchemy學(xué)習(xí)筆記之?dāng)?shù)據(jù)查詢實例

    Python ORM框架SQLAlchemy學(xué)習(xí)筆記之?dāng)?shù)據(jù)查詢實例

    這篇文章主要介紹了Python ORM框架SQLAlchemy學(xué)習(xí)筆記之?dāng)?shù)據(jù)查詢實例,需要的朋友可以參考下
    2014-06-06
  • linux之父進程使用kill函數(shù)殺死子進程方式

    linux之父進程使用kill函數(shù)殺死子進程方式

    這篇文章主要介紹了linux之父進程使用kill函數(shù)殺死子進程方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Cython編譯python為so 代碼加密示例

    Cython編譯python為so 代碼加密示例

    今天小編就為大家分享一篇Cython編譯python為so 代碼加密示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • python+matplotlib繪制旋轉(zhuǎn)橢圓實例代碼

    python+matplotlib繪制旋轉(zhuǎn)橢圓實例代碼

    這篇文章主要介紹了python+matplotlib繪制旋轉(zhuǎn)橢圓實例代碼,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • PIP和conda 更換國內(nèi)安裝源的方法步驟

    PIP和conda 更換國內(nèi)安裝源的方法步驟

    這篇文章主要介紹了PIP和conda 更換國內(nèi)安裝源的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09

最新評論