2017-08-14 55 views
0

我试图调试一个函数quicksort(A, l, r),它有一个名为l的局部变量。但是,在ipdb中也对应于查看当前行周围代码的命令。所以,我看到这样的事情:在ipdb中,如何查询与命令同名的变量?

ipdb> dir() 
['A', 'ipdb', 'l', 'r'] 
ipdb> A 
[2, 4, 6, 1, 3, 5, 7, 8] 
ipdb> l 
    14   A[0], A[p] = A[p], A[0] 
    15 
    16 def quicksort(A, l, r): 
    17   # n = len(A) 
    18   import ipdb; ipdb.set_trace() 
---> 19   if len(A) == 1: 
    20     return 
    21   else: 
    22     # choose_pivot(A) 
    23     q = partition(A, l, r) 
    24     quicksort(A, l, q-1) 

我其实是想在这种情况下,做的是看l值,但是。有没有办法'逃生'默认的l命令并查看l变量的值?

回答

0

我发现我可以简单地做p(l)查看__repr__表示(或print(l)查看__str__表示)。