有的時候我們寫的東西不想讓別人看到,會設(shè)置密碼來加密。在Python中,我們寫的字符字符不想被別人看到,保護(hù)自己的隱私,會選擇加密。本文介紹Python字符串加密的五種方法:url編碼、base64、ascii、md5Unicode轉(zhuǎn)中文。具體代碼如下:
1、url編碼
fromurllib.parseimportquote,unqoute
string='中國紅'
en_str='hello'
#編碼
utf8_code=quote(string)#默認(rèn)編碼格式是utf-8
print(utf8_code)
#輸出結(jié)果:%E4%BD%A0%E5%A5%BD%E5%95%8A
en_code=quote(en_str)
print(en_code)
#輸出結(jié)果:hello!當(dāng)傳入的字符串不是中文時,這個編碼會原文輸出
#設(shè)置編碼格式
gbk_code=quote(string,encoding='gbk')
print(gbk_code)
#輸出:%E4%BD%A0%E5%A5%BD%E5%95%8A
#解碼
prot_str=unquote(gbk_code,encoding='gbk')
print(prot_str)
#輸出結(jié)果:中國紅
2、base64(最簡單但保密度不高)
importbase64
s1=base64.encodestring('helloworld')
s2=base64.decodestring(s1)
prints1,s2
#aGVsbG8gd29ybGQ=\n
#helloworld
3、ascii
#!/usr/bin/python3
#-*-coding:UTF-8-*-
name="asdzxc123"
#編碼
ascii_name=list(map(ord,name))
print(ascii_name)
#解碼
print("".join(map(chr,ascii_name)))
4、md5
#!/usr/bin/envpython
#-*-coding:utf-8-*-
#@Author:Nick
#@Date:2019-10-2410:24:32
#@LastModifiedby:Nick
#@LastModifiedtime:2019-10-2410:50:45
defmd5_encode(original_str):
"""
功能:實現(xiàn)字符串md5加密
:paramoriginal_str:
:return:
"""
m=hashlib.md5()
m.update(original_str.encode(encoding='UTF-8'))
returnm.hexdigest()
5、Unicode轉(zhuǎn)中文
name="千鋒"
#編碼
unicode_name=name.encode("unicode_escape")
utf8_name=name.encode("utf-8")
gbk_name=name.encode("gbk")
gbk2312_name=name.encode("gb2312")
print(unicode_name)
#b'\\u738b\\u5927\\u9524'
print(utf8_name)
#b'\xe7\x8e\x8b\xe5\xa4\xa7\xe9\x94\xa4'
print(gbk_name)
#b'\xcd\xf5\xb4\xf3\xb4\xb8'
print(gbk2312_name)
#b'\xcd\xf5\xb4\xf3\xb4\xb8'
#解碼
print(unicode_name.decode())
#\u738b\u5927\u9524
print(unicode_name.decode("unicode_escape"))
#千鋒
print(utf8_name.decode())#默認(rèn)utf-8
#千鋒
print(gbk_name.decode("gbk"))
#千鋒
以上內(nèi)容為大家介紹了Python中字符串加密的方法有哪些,希望對大家有所幫助,如果想要了解更多Python相關(guān)知識,請關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。