在Python字符串中嵌入可执行的Python脚本
如果你是个bash或posix sh的高手,你一定知道$(命令替换)这个功能,它甚至可以插入到字符串里。例如,
$ echo "I can count: $(seq 1 10 | tr -d '\n')"
I can count: 12345678910
你可以想象用这个功能做很多疯狂的事情,特别是生成动态字符串。你不需要在字符串外面写if..else的代码;只需把代码嵌入到里面就行了!我真是被这个功能宠坏了。那么问题来了:在python里,我们能做类似的事情吗?有没有人已经在开发一个模块来实现这个功能?
(顺便提一句:虽然有这样的功能很强大,但也会带来安全风险。程序可能会受到代码注入的攻击。所以在使用这个功能时,特别是处理外部字符串时,一定要仔细考虑。)