다음 numpy 동작이 의도적입니까, 아니면 버그입니까?Numpy가 a + b와 a = a + b를 다르게 취급하는 이유
from numpy import *
a = arange(5)
a = a+2.3
print 'a = ', a
# Output: a = 2.3, 3.3, 4.3, 5.3, 6.3
a = arange(5)
a += 2.3
print 'a = ', a
# Output: a = 2, 3, 4, 5, 6
파이썬 버전 : 2.7.2, NumPy와 버전 : 의도적이다 1.6.1
나는 a가 정수라는 것을 알고 있지만, 파이썬에서 float와 정수를 더하는 것으로 예상되는 결과는 float이므로 예상치 못한 "feature"입니다. – Dhara
@Dhara : 나는 처음 만났을 때 예상치 못한 결과를내는 것에 동의합니다. . 또한 유용 할 수 있습니다. 여하튼, 설명서에서 동작을 설명하는 견적을 추가했습니다. – NPE
인플레 이스 (In-place) 연산은 훨씬 빠르며 (할당이 없으며, 캐시 활용도가 더 높음), 털이 많은 데이터 구조가있는 경우이 배열에 대한 모든 기존 참조를 유지할 수 있습니다. 또한 이들은 C/C++/Fortran 배경의 프로그래머에게 매우 유용합니다. –