2
다음 코드를 고려하십시오.list.remove()의 이상한 동작
def foo(a):
b = [a+9*i+j for i in xrange(0,3) for j in xrange(0,3)]
return b.remove(a)
코드가 작동하지 않습니다. null
을 반환합니다. 그러나 다음과 같이하면 작동합니다.
def foo1(a):
return [a+9*i+j for i in xrange(0,3) for j in xrange(0,3)]
b = foo1(a)
b = b.remove(a) # This works
왜 두 번째 코드 조각이 실패하면 첫 번째 코드 조각이 실패합니까?