> A statement like print("bar", foo.bar) would be very hard to notice that 
the "bar" match the foo.bar, while

print(nameof(foo.bar), foo.bar) makes the connection explicit.

Isn’t someone working on a “debug string” PEP that would mitigate this?

Maybe not a full PEP:

https://bugs.python.org/issue36774
And
https://bugs.python.org/issue36817

I can’t quit tell where that is at — but it seems it may well address this problem. 

-CHB
--
Christopher Barker, PhD

Python Language Consulting
  - Teaching
  - Scientific Software Development
  - Desktop GUI and Web Development
  - wxPython, numpy, scipy, Cython