编译和评估base64字符串

时间:2012-11-13 09:43:40

标签: python python-3.x base64 eval

以下是我最近看到的一些代码:

import base64

code="CmltcG9ydCBweW1vbmdvCmltcQ" #very long
eval(compile(base64.b64decode(code), "<string>", 'exec'))

我知道它的作用,它是解码它的。但我对自己如何做到这一点感到好奇。因此,如果我有一个应用程序,并且我想对它进行编码并使其通过代码运行它,我该怎么做才能对它进行编码以获得它的base64字符串?

1 个答案:

答案 0 :(得分:4)

您编码包含在字符串中的有效python源代码:

import base64

source = '''\
print('Hello World!')
print('Not sure why you'd ever do this though..')
'''
code = base64.b64encode(source)