This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author eric.smith
Recipients eric.smith, woodscn, zach.ware
Date 2019-02-22.03:04:53
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1550804694.09.0.955126050041.issue36070@roundup.psfhosted.org>
In-reply-to
Content
I suspect Nathan is seeing this problem at class scope. This is a well known issue:

>>> class C:
...   from random import random
...   out = [random() for ind in range(3)]
...
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<stdin>", line 3, in C
  File "<stdin>", line 3, in <listcomp>
NameError: name 'random' is not defined
>>>

It is not related to the list comprehension, but to the class scope. See the last paragraph of https://docs.python.org/3/reference/executionmodel.html#resolution-of-names

But I agree with Zach about needing an example that fails.
History
Date User Action Args
2019-02-22 03:04:54eric.smithsetrecipients: + eric.smith, zach.ware, woodscn
2019-02-22 03:04:54eric.smithsetmessageid: <1550804694.09.0.955126050041.issue36070@roundup.psfhosted.org>
2019-02-22 03:04:54eric.smithlinkissue36070 messages
2019-02-22 03:04:53eric.smithcreate