更多木兰相关文章,欢迎关注木兰编程语言知乎专栏。
木兰逆向工程中用了 cmd 模块实现控制台,而非像前文那样用 Interpreter 模块。猜测是因为前者的可定制性更强,走着看。
作为技术验证的第一步,同样采用 cmd 模块,完成一个最简单控制台:打开后显示提示,quit 退出,仅此而已。
import sys, cmd
class 木兰(cmd.Cmd):
intro = "Welcome to ulang's REPL..\nType 'help' for more informations."
prompt = '> '
def do_quit(self, arg):
sys.exit()
if __name__ == '__main__':
木兰().cmdloop()
运行效果:
$ python3 交互环境.py
Welcome to ulang's REPL..
Type 'help' for more informations.
> quit
$