首页 / 知识
Python中字符串加密的方法有哪些
2023-11-12 13:29:00
有的时候我们写的东西不想让别人看到,会设置密码来加密。在Python中,我们写的字符字符不想被别人看到,保护自己的隐私,会选择加密。本文介绍Python字符串加密的五种方法:url编码、base64、ascii、md5Unicode转中文。具体代码如下:
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'\\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())#默认utf-8
#千锋
print(gbk_name.decode("gbk"))
#千锋
以上内容为大家介绍了Python中字符串加密的方法有哪些,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注我们
最新内容
相关内容
python的调用绑定方法和非绑定方法
python的调用绑定方法和非绑定方法,代码,方法,实例,第一,培训,时计,奇数,偶数,参数,定义,在Python中,如果用实例去调用方法,这种限制就被称为PyPython网络编程调用接收数据的三种
Python网络编程调用接收数据的三种方法,数据,代码,基础,通用,通讯,服务,网络,培训,方法,报文,最近在使用python进行网络编程开发一个通用的tc用Python爬取百度搜索结果
用Python爬取百度搜索结果,百度,项目,分析,软件,网址,广告,时间,培训,粮食,标题,一、前言众所周知,百度上直接搜索关键字会出来一大堆东西,时常Python 3.6 中针对文件系统的神奇
Python 3.6 中针对文件系统的神奇方法,数字,代码,数据,标准,信息,培训,首次,工作,文件名,常数,Python3.6首次发布于2016年,尽管它已经发布了很在Python中使用带有列表和字符串文
在Python中使用带有列表和字符串文字的for循环,代码,数字,培训,之间,字符串,列表,语句,文字,奇数,这一点,现在看一下下面的代码,输出1到100之为何你的Python代码应是扁平与稀疏
为何你的Python代码应是扁平与稀疏的,代码,培训,信息,观察,设计,工具,嵌套,闻闻,程序员,沉思,Python之禅之所以得名,正是由于它那简明扼要的规Python 之模块重载的五种方法
Python 之模块重载的五种方法,环境,培训,方法,模块,文件夹,例子,下面,内容,语句,请看,python环境准备新建一个foo文件夹,其下包含一个bar.py文如何提速优化python代码?
如何提速优化python代码?,代码,时间,数据,新增,写法,包装,情况,下来,面临,工作,Python是一种脚本语言,相比C/C++这样的编译语言,在效率和性能方Python 模块之输入不可见的密码
Python 模块之输入不可见的密码,密码,系统,情况,公共,位置,信息,电子,网上,认证,培训,密码对程序员来说尤其重要。你不应该在不加密的情况下提升Python数据分析能力的方法
提升Python数据分析能力的方法,分析,数据,工具,代码,时间,环境,报告,信息,培训,标准,1.Pandas分析包这个工具的好处是显而易见的。下面的动画python经典最短代码实现排序的功能
python经典最短代码实现排序的功能,代码,位置,数据,分析,时间,序列,元素,培训,下来,算法,冒泡排序:算法思想:1.比较相邻的元素,如果第一个比第二Python中字典合并的实现方法
Python中字典合并的实现方法,培训,结果,以上,版本,字典,方法,函数,下面,背景,发现,TableofContents背景Methon1:适用于Python3.5及以上版本呢M