这是一个棘手的问题,因为它处理的是Pythonwin.exe用户界面本身,而不是我的代码。
当我运行包含以下代码的文件时,我希望如果它出错,它将在回溯输出中显示失败的行
我实际上只是创建了一个无污染的32位python 3.5环境,安装了pywin32,并打开了我的testfile.py来运行它,这就是结果。 Screenshot
如果您看到这行内容
File "C:\testfile.py", line 2, in <module>
foo = 2 #this line works fine, but is identified as the traceback line
我希望它指向第5行而不是第2行。 在较大的脚本中,这要麻烦得多,因为我需要根据上下文猜测是哪一行导致了错误。
要在基于蟒蛇的环境中复制我的情况,请执行以下操作: 1.打开Anaconda命令提示符 2.运行以下行以生成我们的环境
set CONDA_FORCE_32BIT=1
conda create -n test python=3.5
activate test
conda install -y pywin32
#comment foo = 2 #this line works fine, but is identified as the traceback line a=2 a=3 a=b #this line causes the error, but isn't identified
这不仅是anaconda安装环境中的问题。 如果有人对如何使其报告错误的代码行或为什么这样做如此有任何见解,请告诉我。谢谢!