방금 Why do list comprehensions write to the loop variable, but generators don't?에서 배웠습니다. 목록 내재는 루프 변수를 주변 범위으로 "누설"합니다.리스트 comprehension은 Python2에서 루프 변수를 누설합니다. 어떻게하면 파이썬과 호환 될 수 있습니까?
Python 2.7.6 (default, Jun 22 2015, 17:58:13)
>>> x = 'before'
>>> a = [x for x in (1, 2, 3)]
>>> x
3
이 버그는 Python3에서 수정되었습니다.
Python 3.4.3 (default, Oct 14 2015, 20:28:29)
>>> x = 'before'
>>> a = [x for x in (1, 2, 3)]
>>> x
'before'
현재 Python2를 Python3과 호환되도록 만드는 가장 좋은 방법은 무엇입니까?
을 "누출"이름에 의존하지 마십시오 ... 고유 한 이름을 사용 list-comp 변수에 대해. – mgilson
목록이있는 생성기 식 사용 –