에 내가 공학 학생이고 내가 포트란 코드를 작성하는 것이 익숙 해요 반복,하지만 지금은 NumPy와를 사용하여 내 수치 조리법 파이썬에 더 얻기 위해 노력하고있어.더 파이썬 방법은 NumPy와
내가 여러 배열에서 요소를 사용하여 반복 계산을 수행하는 데 필요한 경우, 내가 포트란 쓸 줄 것과 즉각적인 번역
k = np.zeros(N, dtype=np.float)
u = ...
M = ...
r = ...
for i in xrange(N):
k[i] = ... # Something with u[i], M[i], r[i] and r[i - 1], for example
것이다 그러나이 방법은 더 파이썬 있는지 궁금했다, 또는 어떤 방법보다 더 낫다 : 나는 그것을 필요하지 않은 경우,
for i, (k_i, u_i, M_i, r_i) in enumerate(zip(k, u, M, r)):
k_i = ... # Something with u_i, M_i, r_i and r[i - 1]
덕분에 나는 인덱스가 열거 할 그렇지 않으면 난 그냥 지퍼 또는 itertools.izip 사용할 수 있습니다.
아이디어가 있으십니까? 성능면에서 코드가 어떻게 영향을 줍니까? 이 작업을 수행 할 수있는 다른 방법이 있습니까?
사실,이 방법을 사용하면 이전 요소를 복구 할 수 없습니다 (예를 들어, 나와있는 것처럼 열거 형을 사용하는 이유입니다). – astrojuanlu
꽤 옳습니다. 시퀀스 작업을 복잡하게 할 때 종종 결과를 명시 적으로 생성하는 독립형 함수 생성기를 작성합니다. 원한다면 내 호출 코드를 numpy 배열로 묶을 수 있습니다. –
-1, numpy에서 선호하는 방법은 요소 단위의 작업이기 때문입니다. 답을보십시오 unutbu – bmu