Question

Je suis nouveau dans l'utilisation de Python - Arcmap.

J'ai sur ma carte d'une liste de couches avec la presque même nom (bound3 à bound50)

Je veux calculer le MinimumBoundingGeometry_management.J'ai trouvé comment le faire pour une seule couche.

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

Au lieu de cela, je voudrais créer une boucle comme dans matlab style:

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

quelqu'un peut-il me donner un conseil !

merci beaucoup

Était-ce utile?

La solution

Vous avez juste à construire la chaînes "boundi" et "boundiConvexHull" pour chacun, j'.

Au lieu de 3:50 (en Matlab) vous ne xrange(3,51) en python.La raison pour laquelle vous allez jusqu'à 51 c'est que xrange(n) génère la séquence 0:(n-1) (python est basée sur 0 alors que matlab est de base 1).

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

J'ai fait de l'utilisation de python dans la chaîne de mise en forme: "bound%i" % i est sucre syntaxique pour printf type de fonctions qui vous sont familiers avec matlab.

Liens pratiques:

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top