【发布时间】:2013-04-14 20:00:17
【问题描述】:
我不在编程领域,但我最近对 Python 产生了兴趣。我正在编写一些函数,但为了调试,我需要查看正在运行哪些命令。例如:
def foo():
for i in xrange(0,5):
a = 1 + i
是否可以让解释器输出
>>> for i in xrange(0,5)
>>> a = 1 + 0
>>> a = 1 + 1
>>> a = 1 + 2
>>> a = 1 + 3
>>> a = 1 + 4
对于
>>> foo()
或者至少写入文件发生了什么?我过去做过一些脚本,我记得这在 DOS 中是可能的,使用 @ECHO ON 或其他东西。我做了一些阅读,我觉得它与 Python 中的标准输入和标准输出有关,所以我尝试了
import sys
def foo():
for i in xrange(0,5):
a = 1 + i
sys.stdin.flush()
sys.stdout.flush()
但我什么也没得到……我也试过了
import sys
# foo()
sys.stdin.read()
sys.stdout.read()
和https://stackoverflow.com/a/3289051/2032568,但它只是挂起。抱歉,如果这不是适合初学者的地方。我找不到任何可以回答我的问题的内容。
【问题讨论】:
-
您可能认为您的问题很清楚,但在我看来,您下面的 cmets 表明您的问题与您实际提出的问题完全不同。也许你可以编辑你的问题,让它更清楚一点。您是否想要某种实际显示计算表达式所需的所有中间步骤的东西,就像有人在数学课上介绍代数表达式一样?
标签: python debugging io stdout stdin