我突然无法在python程序中设置任何断点。请注意,有两个(Pdb)
显示。我想知道以前Pdb是否已损坏。在发生此问题之前,我确实尝试使用Pdb进入abc.so
文件中的一些已编译C ++代码:
-> print('haha')
(Pdb) (Pdb)
Traceback (most recent call last):
File "high.py", line 38, in <module>
print('haha')
File "high.py", line 38, in <module>
print('haha')
File "/Users/ludaming/anaconda2/lib/python2.7/bdb.py", line 49, in trace_dispatch
return self.dispatch_line(frame)
File "/Users/ludaming/anaconda2/lib/python2.7/bdb.py", line 68, in dispatch_line
if self.quitting: raise BdbQuit
bdb.BdbQuit
答案 0 :(得分:0)
现在,我发现Pdb并未出现故障。这是因为Python从Pdb旁边的stdin读取数据,这会进入Pdb的交互式控制台并引起问题。因此,绕过的是从文件而不是stdin中读取
fp = open(sys.argv[1], 'r')
t = int(fp.readline())
代替
t = int(raw_input())