当前位置: 首页 > 问答 > Python编程 > 问答详情

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

12月11日 08:43744人阅读
许老师 Python编程

1、url编码

from urllib.parse import quote, 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(最简单但保密度不高)

import base64

s1 = base64.encodestring('hello world')

s2 = base64.decodestring(s1)

print s1,s2

# aGVsbG8gd29ybGQ=n

# hello world

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/env python

# -*- coding: utf-8 -*-

# @Author: Nick

# @Date: 2019-10-24 10:24:32

# @Last Modified by: Nick

# @Last Modified time: 2019-10-24 10:50:45

def md5_encode(original_str):

"""

功能:实现字符串 md5加密

:param original_str:

:return:

"""

m = hashlib.md5()

m.update(original_str.encode(encoding='UTF-8'))

return m.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"))

# 王大锤

职业技能申请领取
您的姓名
您的电话
意向课程
点击领取

环球青藤

官方QQ

扫描上方二维码或点击一键加群,免费领取大礼包,加群暗号:青藤。 一键加群

问答来自

许老师 Python编程
好评率85% 浏览744

相关问题

如何用python中max()求取列表最大值?
魏老师 Python编程
python中如何用sort方法实现对列表的排序?
付老师 Python编程
Python中字符串如何查找?
许老师 Python编程
课程咨询 学员服务 公众号

扫描关注微信公众号

APP

扫描下载APP

返回顶部