Scripts ArcPy complétant / complétant automatiquement le code à l'aide de Notepad ++ (éditeur externe)?


19

J'ai écrit des scripts en Python pour ArcGIS 10, et jusqu'à présent, je viens d'utiliser Notepad ++.

J'aime la façon dont le code de l'interface de ligne de commande Python complète la fonctionnalité arcpy pour vous, vous montrant vos options, et je me demandais s'il y avait un moyen d'ajouter cette fonctionnalité à un éditeur externe.

Réponses:


9

Je recommande l' IDE WingWare . Il semble avoir le meilleur débogage et l'achèvement de code parmi les IDE Python que j'ai vus. L'un des facteurs de motivation pour arcpy dans 10.0 était qu'il aurait une meilleure complétion de code que l'arggisscripting proposé.


15

PyScripter est mon choix. C'est gratuit et open source et une installation légère et rapide. Il existe même une installation sans registre qui ne nécessite pas de droits d'administrateur pour l'installation.


4
La complétion de code semble fonctionner pour le module arcpy Arc10, mais je n'ai pas pu l'activer pour Arc 9.x. Pour les futurs lecteurs, pour activer la complétion de code arcpy (Arc10) dans PyScripter, accédez à Outils -> Options -> Options IDE -> et ajoutez "arcpy" à la ligne "packages spéciaux" de la section Achèvement de code. REMARQUE: la complétion de code est sensible à la casse, donc arcpy.copyfeatures ne sera pas codé, mais arcpy.CopyFeatures sera codé (notez les majuscules "C" et "F".
RyanKDalton-OffTheGridMaps

2
Une note supplémentaire sur l'achèvement du code ... vous pouvez désactiver la sensibilité à la casse en décochant "sensible à la casse" au même endroit que noté ci-dessus.
RyanKDalton-OffTheGridMaps

De plus, la Ctrl-Shift-Spacetouche de raccourci affichera le "call tip" de complétion de code si vous êtes par exemple en train d'écrire une liste de paramètres de fonction et que vous avez fait quelque chose pour la fermer.
blah238

La question porte sur l'auto-complétion d'ArcPy mais votre "réponse" n'en fait aucune mention. Veuillez résoudre ce problème dès que possible, car il risque actuellement d'être supprimé.
PolyGeo

8

MS a récemment publié Python Tools pour Visual Studio - une fois que vous avez suivi les étapes décrites ici: http://blog.guerrillagis.net/?p=878 Visual Studio vous fournira Intellisense, les signatures de méthode, la coloration syntaxique, un REPL et un débogueur.


1
+1! Visual Studio 2010 avec PyTools est un fantastique IDE Python. Il s'intègre même à Visual Studio Integrated Shell pour une configuration entièrement gratuite même sans aucune licence Microsoft existante.
Philip

J'utilise aussi Python Tools pour Visual Studio - déplacé ici de PythonWin il y a plusieurs années et je n'y
suis

7

J'essaierais Eclipse en utilisant les extensions Pydev . Je sais qu'il n'a pas très bien fait l'achèvement de code avec le géoprocesseur python en 9.3, et je n'ai pas encore 10 pour jouer avec, mais même sans lui, c'est un éditeur beaucoup plus agréable avec des fonctionnalités très intéressantes.


1
Je me suis enfin mis à jouer avec 10 - le code complet fonctionne. Éclipse. Bonne chance à tous ceux qui l'essayeront!
om_henners

5

L'achèvement de code est une fonctionnalité de l'éditeur, ce post stackoverflow a une liste d'éditeurs qui prennent en charge l'achèvement de code. Dans Notepad ++, vous pouvez activer la saisie semi-automatique comme préférence .


1
Merci, c'était vraiment utile. La saisie semi-automatique est activée, mais elle ne fait que compléter le code python principal. Est-il possible d'avoir des fonctions arcpy à saisie semi-automatique? Merci pour l'aide, je suis assez nouveau dans ce domaine.
Tanner

3

Il semble mal connu qu'IDLE prend également en charge la saisie semi-automatique de manière fiable.

Si vous l'utilisez avec ArcPy, exécutez toujours la import arcpypartie du script une fois pour que votre fenêtre de script prenne connaissance de ce package de site.

Cependant, si vous ne voyez pas le démarrage automatique, l'astuce consiste à utiliser "Ctrl + Barre d'espace" pour le déclencher.

J'ai vu cela mentionné ici à Obtention de la saisie semi-automatique ArcPy pour fonctionner dans IDLE? et sur StackOverflow sur Python IDLE. Les complétions automatiques / Afficher ne fonctionnent pas, mais cela se trouve sans doute quelque part dans la documentation IDLE.


1

Active State komodo fonctionne très bien pour moi. Je viens d'ajouter une référence au répertoire arcpy dans les préférences. Il a un bon débogage et une bonne interface. La saisie semi-automatique fonctionne pour arcpy et mes propres bibliothèques.


Salut Neil, peux-tu mieux décrire comment? Im essayant de l'ajouter sur les préférences comme décrit mais pas de chance de trouver le .xml pour le code intelli dans le dossier arcpy.
Jorge Vidinha
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.