代码奔腾 · 2017年1月9日 0

Python基本库:Base64编码与解码

根据我最近的观测,发现老司机的水平是越来越高了,竟然以Base64编码后再开车,不少年轻人看不懂是什么东西,老司机都开车了还上不了车。

其实这个使用Python的基本库base64,几句代码就能完成编码和解码。

# python3.x
import base64
# 编码
print (base64.standard_b64encode('需要编码内容'))
# 解码
print (base64.standard_b64decode('需要解码内容'))

我之所以喜欢Python是因为很多时候,只需要简单几行代码,就能够完成一些简单的事情,这是很多高级语言所不具备的。

不过,如果想继续完善一下,方便解码编码,也还是要写多几行代码的。

以下代码涉及到Python的基础:input输入,while循环,if..elif..else判断语句,try…except异常处理,字符串转换为字节,字节转换为字符串,Base64编码与解码,print打印输出。

# coding: utf-8
# base64 decode and encode with python3.x
# author: chias
# site: www.mrorz.com
import base64

# 循环执行
while True:
    # 输入字符串
    st = input('Input string:')
    # 输入处理方式,dc:解码,ec:编码
    ac = input('Input what do you want to do(dc/ec)?')

    if ac == 'dc':
        try:
            dc = st.encode() #str to bytes
            #  decode(解码)
            dc = base64.standard_b64decode(dc)
            print (dc.decode()) # bytes to str
        except Exception as e:
            print(e)

    elif ac == 'ec':
        try:
            ec = st.encode() #str to bytes
            # encode(编码)
            ec = base64.standard_b64encode(ec)
            print (ec.decode()) # bytes to str
        except Exception as e:
            print(e)

    else:
        print('An error occurred...')

也有一段时间没写过Python了,把Python2.7和Python3.x的写法都搞混了……代码竟然还没有刚开始自学Python的那几天熟练。用进废退啊!后续有空还是在博客上update一下代码,就当作复习下基础吧!