我在寻找一种将hex
字符串转换为base64
的方法。已经有了答案here,但是最好的答案,即使非常优雅,也适用于Python的早期版本。
到目前为止,这是我解决问题的方法:
import codecs
import base64
def hex_to_base64(hex_str):
decode_hex = codecs.getdecoder("hex_codec")
encode_b64 = base64.b64encode(decode_hex(hex_str)[0])
return encode_b64
是否有更好/更多的Pythonic
方法?
我想我可以缩短它并摆脱导入codecs
的过程,如下所示:
import base64
def hex_to_base64(hex_str):
encode_b64 = base64.b64encode(bytes.fromhex(hex_str))
return encode_b64
现在,这引出了我的第二个问题: codec
模块的作用是什么?
该模块已被描述为
此模块为标准Python编解码器(编码器和解码器)定义基类
那么我可以使用codec
模块进行所有的编码和解码吗?