Pages: 1
- Sujet précédent - Liste de shapefile des dossiers dans un dossier avec Python - Sujet suivant
#1 Tue 17 March 2009 19:40
- CharlesR
- Participant occasionnel
- Date d'inscription: 3 Aug 2007
- Messages: 19
Liste de shapefile des dossiers dans un dossier avec Python
Bonjour à tous,
Voici ma question:
J'ai un dossier qui contient plusieurs autres dossiers... et ces dossiers possède 1 shapefile chaque.
Exemple:
Dossier Repere
-------------> Dossier A ------> .shp
-------------> Dossier B ------> .shp
-------------> Dossier C ------> .shp
Comment je peux faire une liste de ces .shp avec les objets geoprocessor étant donné qu'ils sont tous dans un dossier différent?
Merci beaucoup pour votre aide!
Hors ligne
#2 Tue 17 March 2009 21:22
- assogeomatica
- Juste Inscrit !
- Date d'inscription: 26 Oct 2006
- Messages: 4
Re: Liste de shapefile des dossiers dans un dossier avec Python
Bonjour à toi
As tu essayer de faire une liste de workspace, avec list.workspace("", "Folder").
Ensuite, tu tournes dans cette liste là, avec while par exemple, et à l'intérieur du while tu change le workspace pour celui de ton document, et tu fais une liste de feature.
exemple:
Code:
# Set the workspace. List all of the shapefiles gp.Workspace= "xxxx" # List folder # wkspList= gp.ListWorkspaces("", "Folder") wkspList.reset() wksp = wkspList.Next() while wksp: # Set workspace to current folder # gp.workspace = wksp fcList = gp.ListFeatureClasses("*","") # Reset the enumeration to make sure the first object is returned fcList.reset() # Get the first feature class name fc = fcList.Next() while fc: # While the feature class name is not None fc = fcList.Next() wksp = wkspList.Next()
Voilà,
ça devrait marcher
Hors ligne
#3 Wed 18 March 2009 10:25
- freesnowpetrel
- Participant assidu
- Lieu: Pretoria, Afrique du Sud
- Date d'inscription: 1 Mar 2007
- Messages: 222
Re: Liste de shapefile des dossiers dans un dossier avec Python
Bonjour
Tu n'est pas oblige de te limiter aux fonctions du geoprocesseur d'arcgis, en Python il y a plein d'autres modules utilisables.
Tu peux par exemple utiliser la fonction os.walk() qui explore tous les sous-dossiers voir doc ici et coupler cela soit avec un fnmatch.filter(ta liste de fichiers retournee par os.walk,pattern recherche("*.shp")) soit avec des fontions string sur tes noms de fichier (par exemple: nomfichier.endswith(".shp").
A+
Rodolphe
Dernière modification par freesnowpetrel (Wed 18 March 2009 10:27)
Hors ligne
Pages: 1
- Sujet précédent - Liste de shapefile des dossiers dans un dossier avec Python - Sujet suivant