我有一个 Python 作业,我需要通过识别行号来描述 Python 运行程序的顺序。这是为了帮助我们理解 try/except 和错误。
我很确定我已经通过检查实现了这一点,但我想知道 Python 是否能够按行号打印出流程,以便我可以检查我的工作。如果 Python 没有内置这个,有没有办法可以做到这一点?
我正在使用 Python 2.7。
我有一个 Python 作业,我需要通过识别行号来描述 Python 运行程序的顺序。这是为了帮助我们理解 try/except 和错误。
我很确定我已经通过检查实现了这一点,但我想知道 Python 是否能够按行号打印出流程,以便我可以检查我的工作。如果 Python 没有内置这个,有没有办法可以做到这一点?
我正在使用 Python 2.7。
尝试跟踪模块:
例子:
测试.py:
def main():
print("Hello, world")
if __name__ == '__main__':
main()
然后在命令行上:
$ python -m trace --trace test.py
--- modulename: test, funcname: <module>
test.py(1): def main():
test.py(4): if __name__ == '__main__':
test.py(5): main()
--- modulename: test, funcname: main
test.py(2): print("Hello, world")
Hello, world
--- modulename: trace, funcname: _unsettrace
trace.py(80): sys.settrace(None)
它还有一些其他可能有用的选项,例如--listfuncs
.
您可以使用 python 标准库中的跟踪模块。