python交互式终端是怎么实现的_python中的脚本和交互式终端客户端
示例代碼:import cmd
import sys
class Prompt(cmd.Cmd):
def __init__(self, stufflist=[]):
cmd.Cmd.__init__(self)
self.prompt = '>>> '
self.stufflist = stufflist
print "Hello, I am your new commandline prompt! 'help' yourself!"
def do_quit(self, arg):
sys.exit(0)
def do_print_stuff(self, arg):
for s in self.stufflist:
print s
p = Prompt(sys.argv[1:])
p.cmdloop()
示例測試:
^{pr2}$
為了將輸出保存到文件中,您可以將通常轉到stdout的內容也寫入文件,例如使用以下類:class Tee(object):
def __init__(self, out1, out2):
self.out1 = out1
self.out2 = out2
def write(self, s):
self.out1.write(s)
self.out2.write(s)
def flush(self):
self.out1.flush()
self.out2.flush()
你可以這樣使用它:with open('cmdtest.out', 'w') as f:
# write stdout to file and stdout
t = Tee(f, sys.stdout)
sys.stdout = t
一個問題是,通過stdin讀入的命令不會出現在這個輸出中,但是我相信這可以很容易地解決。在
總結
以上是生活随笔為你收集整理的python交互式终端是怎么实现的_python中的脚本和交互式终端客户端的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 41集团军保卫处处长什么级别
- 下一篇: java连接hbase_HBase 工具