如何使用来自文件的输入来模拟python交互式会话并保存会话记录?换句话说,如果我有一个文件sample.py
:模拟交互式Python会话
#
# this is a python script
#
def foo(x,y):
return x+y
a=1
b=2
c=foo(a,b)
c
我想sample.py.out
,看起来像这样(略蟒蛇旗):
>>> #
... # this is a python script
... #
... def foo(x,y):
... return x+y
...
>>> a=1
>>> b=2
>>>
>>> c=foo(a,b)
>>>
>>> c
3
>>>
我试着喂标准输入到Python,Twitter的建议是'bash脚本',没有任何细节(在bash中使用脚本命令播放,没有喜悦)。我觉得它应该很容易,而我错过了一些简单的东西。我需要使用exec
还是别的什么来编写解析器?
Python或ipython解决方案将会很好。我可能再要转换的Web浏览器的HTML和语法高亮这一点,但这是另一个问题....
你是不是想你的交互式Python外壳的会话保存到文件或模拟蟒蛇壳/控制台运行? –
@詹姆斯米尔我认为OP想要完全相反,一个脚本被转换为从交互式shell看起来像。 – luk32
http://pythonhosted.org/sphinxcontrib-programoutput/ < - 这将做类似的事情。 –