Jayanth Raman <raman.jaya...@gmail.com> added the comment:

Thanks for the "interact" tip.

FWIW, I see this issue in 2.7.10 as well.  Although the list comprehension 
works.

$ python
Python 2.7.10 (default, Oct  6 2017, 22:29:07)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.31)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> ^D

$ python /tmp/test2.py
> /tmp/test2.py(5)main()
-> for ii in range(nn):
(Pdb) n
> /tmp/test2.py(6)main()
-> num = sum(xx[jj] for jj in range(nn))
(Pdb) sum(xx[jj] for jj in range(nn))
*** NameError: global name 'xx' is not defined
(Pdb) [xx[jj] for jj in range(nn)]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
(Pdb) c
('xx', [0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

# test2.py

def main(nn=10):
    xx = list(range(nn))
    import pdb; pdb.set_trace()
    for ii in range(nn):
        num = sum(xx[jj] for jj in range(nn))
    print('xx', xx)

if __name__ == '__main__':
    main()

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue35871>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to