【python】 python实现Base64转码

该文章介绍了一个Python类,通过反射机制动态调用base64模块的方法实现Base64的编码和解码功能。用户输入选择1进行编码,输入2进行解码,然后提供数据路径和保存路径,程序将读取文件,执行Base64转换,并保存结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

python实现Base64转码

说明

本文通过 反射机制、隐藏类属性,实现Base64的编码和解码

代码展示

import base64


class Base64_conversion_cls:
    def __init__(self):
        # self.__data_path = input('data_path请输入 >>> ')
        # self.__save_data_path = input('请输入save_data_path >>> ')
        self.__conversion = {
            '1': 'b64encode',
            '2': 'b64decode'
        }

    def __Data_conversion_func(self, data_path, save_data_path):
        '''
        数据转换函数
        @param data_path: 数据的路径
        @param save_data_path: 转换后的数据的保存路径
        @return:
        '''

        # 第一步: 打开文件
        with open(data_path, 'rb') as file_obj:
            f_data = file_obj.read()

        # 第二步: 通过反射机制,实现base64的编码和解码
        data = getattr(base64, self.__conversion[self.input_data])(f_data)

        # 第三步: 保存转换后的文件
        with open(save_data_path, 'wb') as file_obj:
            file_obj.write(data)

    def Ext_interface_func(self):
        print('1 -- base64编码, 2 - base64解码')
        self.input_data = input('请输入  >>> ')
        data_path = input('请输入data_path >>> ')
        save_data_path = input('请输入save_data_path >>> ')
        self.__Data_conversion_func(data_path, save_data_path)


if __name__ == '__main__':
    Base64_conversion_cls().Ext_interface_func()

核心说明

代码的核心是在第二步,通过反射机制获取不同的编码和解码功能

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值