Python中字符串加密的方法有哪些

有的时候我们写的东西不想让别人看到,会设置密码来加密。在Python中,我们写的字符字符不想被别人看到,保护自己的隐私,会选择加密。本文介绍Python字符串加密的五种方法:url编码、base64、ascii、md5 Unicode转中文。具体代码如下:

1、url编码

fromurllib.parseimportquote,unqoute
string='中国红'
en_str='hello'
#编码
utf8_code=quote(string)#默认编码格式是utf-8
print(utf8_code)
#输出结果:%E4%BD%A0%E5%A5%BD%E5%95%8A
en_code=quote(en_str)
print(en_code)
#输出结果:hello!当传入的字符串不是中文时,这个编码会原文输出
#设置编码格式
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)
#输出结果:中国红

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):
"""
功能:实现字符串md5加密
:paramoriginal_str:
:return:
"""
m=hashlib.md5()
m.update(original_str.encode(encoding='UTF-8'))
returnm.hexdigest()

5、Unicode转中文

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'u738bu5927u9524'
print(utf8_name)
#b'xe7x8ex8bxe5xa4xa7xe9x94xa4'
print(gbk_name)
#b'xcdxf5xb4xf3xb4xb8'
print(gbk2312_name)
#b'xcdxf5xb4xf3xb4xb8'
#解码
print(unicode_name.decode())
#u738bu5927u9524
print(unicode_name.decode("unicode_escape"))
#王大锤
print(utf8_name.decode())#默认utf-8
#王大锤
print(gbk_name.decode("gbk"))
#王大锤

原文来自:https://www.py.cn

© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容