【11】python模塊:xpinyin(拼音)、hashlib(加密)


1、下載安裝模塊

cmd下執行命令下載安裝:pip install xpinyin

cmd下執行命令下載安裝:pip install hashlib

 

2、xpinyin模塊(拼音)

from xpinyin import Pinyin

p = Pinyin()

res = p.get_pinyin("上海")
#'shang-hai'

res = p.get_pinyin("上海","")#默認用-連接拼音,所以我們在后面加上了''
#'shanghai'

res = p.get_pinyin("上海", ' ')
# 'shang hai'

res = p.get_pinyin(u"上海", show_tone_marks=True)
# 'shàng-hǎi'

res = p.get_initial("")
# 'S'

res = p.get_initials("上海")
# 'S-H'

res = p.get_initials("上海", '')
# 'SH'

res = p.get_initials("上海", ' ')
# 'S H'

print(res)

 

 

3、hashlib模塊(加密)

hashlib模塊,主要用於加密相關的操作,在python3的版本里,代替了md5和sha模塊,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法。
以上幾種加密方式的區別為密碼長度。md5不能反解,但是加密是固定的,就是關系是一一對應,所以有缺陷,可以被對撞出來

import hashlib

password='123123'
# password.encode()#轉成二進制類型的才可以加密
m = hashlib.md5(password.encode()) #md5加密   <md5 HASH object @ 0x104060670>
print(m.hexdigest())#將轉成二進制后的字符串加密   4297f44b13955235245b2497399d7a93

 

4、小練習

寫一個加密的函數,並加鹽,加鹽的意思是在密碼后面加一個字符串

def my_md5(s:str,salt=None):
    #salt是鹽值
    s = str(s)#先轉成字符串

    if salt:#如果傳入的有鹽值
        s = s+salt
    m = hashlib.md5(s.encode())#先轉成二進制
    return m.hexdigest()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM