How do I manipulate a variable whose name conflicts with PDB commands?

My code is, for better or worse, rife with single letter variables (it's physics stuff, so those letters are meaningful), as well as NumPy's, which I'm often interacting with.

When using the Python debugger, occasionally I'll want to look at the value of, say, n. However, when I hit n<enter>, that's the PDB command for (n)ext, which has a higher priority. print n works around looking at it, but how can I set it?

Use an exclamation mark ! before a statement to have it run :

    python -m pdb test.py
    > /home/user/test.py(1)<module>()
    -> print('foo')
    (Pdb) !n = 77
    (Pdb) !n
    77
    (Pdb) n
    foo
    > /home/user/test.py(2)<module>()
    -> print('bar')
    (Pdb)

From: stackoverflow.com/q/21123473

Back to homepage or read more recommendations: