에서 함수의 목록을 생성 I 익명 함수의 목록을 생성합니다 다음 파이썬 코드가있다 :파이썬
basis = [ (lambda x: n*x) for n in [0, 1, 2] ]
print basis[0](1)
나는 반면에, 그것은 그러나
basis = [ (lambda x: 0*x), (lambda x: 1*x), (lambda x: 2*x) ]
print basis[0](1)
에 해당 될 것으로 예상했을 것이다 두 번째 발췌 문장은 0을 출력하고, 첫 번째는 2를 인쇄합니다. 2. 첫 번째 코드 조각에 무엇이 잘못되었으며, 왜 예상대로 작동하지 않습니까?
관련 질문 : http://stackoverflow.com/q/139819/4279 – jfs