2012-01-24 3 views
2

저는 Python - Arcmap을 처음 사용했습니다.파이썬의 루프가 matlab과 비슷합니까?

나는 내가 MinimumBoundingGeometry_management을 계산하려면 (bound50하는 bound3)

내지도에 거의 동일한 이름을 가진 층의 목록을 가지고있다. 하나의 레이어에 대해 어떻게하는지 알아 냈습니다.

arcpy.MinimumBoundingGeometry_management("bound3","bound3ConvexHull","CONVEX_HULL","ALL")

대신 내가 MATLAB 스타일처럼 루프를 만들고 싶습니다

for i=3:1:50 arcpy.MinimumBoundingGeometry_management(boundi,boundiConvexHull,... "CONVEX_HULL","ALL") end

누군가가 나에게 힌트를 줄 수 있습니다!

덕분에 많은

답변

3

당신은 각 난의 문자열 "boundi""boundiConvexHull"를 구성해야합니다.

(Matlab에서) 3:50 대신 파이썬에서 xrange(3,51)을 사용합니다. 당신이 51까지 올라간 이유는 xrange(n)이 시퀀스 0:(n-1) (파이썬은 0 기반이지만 matlab은 1 기반)을 생성한다는 것입니다. 나는 파이썬의 문자열 형식을 사용했습니다

for i in xrange(3,51): 
    arcpy.MinimumBoundingGeometry_management("bound%i" % i, "bound%iConvexHull" % i, ...) 

: "bound%i" % i는 MATLAB에 익숙한 printf와 형 기능을위한 문법 설탕입니다.

핸디 링크 :

+0

매우 도움이되는 환호! – user1166251