python程序运行时 查看对象状态
不知大家有没有用过Rthymbox的python console.
Rthymbox可以在运行的时候,让它的 交互式命令行 对程序进行控制. 比如说可以调用player的play函数,让它播放, 还可以查看一些变量的状态等 .(具体的控制函数等可以google)
我对他的总结就是, 他可以在程序运行状态下, 对程序的变量进行状态查看和控制.
我想问下大家,这种类似的功能, 需要怎样设计才能实现, 我想不到任何可以实现这个的思路.
回答:
这软件挺 open 的嘛,既提供 GUI 给用户,又提供 CLI 给用户。但我怀疑 CLI 只是给开发者自己用的,哈哈。
这种类似的功能, 需要怎样设计才能实现
实现上倒没什么稀奇的,所有给人用的软件无论 CLI/GUI 都是这样的,简单讲就是:读取用户的输入 => 执行用户的输入 => 反馈结果给用户。这个过程是无限循环的,直到用户执行"退出"为止。
他可以在程序运行状态下, 对程序的变量进行状态查看和控制。
程序运行状态下,输出点信息,或者改下状态。嗯……… python自带交互式命令行(标准库自带的那个,暂且记下,我回头再翻翻
),你可以直接输入 python 代码来执行。
评论区内容整理下贴上来咯,免得人家鄙视我灌水
:
分分钟实现一个我是做不到的,不过思路可以大概说说:
先实现一个 Console,找个GUI库,弄个窗体改下它的外观和键盘响应,总之把它定制成命令行那样的输入风格,这部分工作量最大,但实现它后剩下的就简单了,如下:
python
console = Console()
while True:
pyCode = console.input(prefix=">>> ")
evalResult = eval(pyCode)
console.print(evalResult) # or console.output(evalResult)
# over
当然,eval 时的错误也得一并输出到控制台。
在下以为像 ipython 用 QT 实现的那个 Console 就挺牛x,支持图像,提供了更多可能,可以参考下。
http://ipython.org/ipython-doc/stable/interactive/qtconsole.html
回答:
以前用过 不过现在没有用了
以上是 python程序运行时 查看对象状态 的全部内容, 来源链接: utcz.com/a/163268.html