it-swarm.com.de

Python und Intellisense

Gibt es ein Äquivalent zu "Intellisense" für Python?

Vielleicht sollte ich es nicht zugeben, aber ich glaube, Intellisense beschleunigt wirklich die 'Entdeckungsphase' des Lernens einer neuen Sprache. Zum Beispiel war es ein Kinderspiel, von VB.net zu C # zu wechseln, da mir Schnipsel und Intelligenz geholfen haben.

67
Andrew Harry

In diesem - Blogeintrag wird erläutert, wie Vim als Python-IDE eingerichtet wird. Er behandelt die Intellisense-ähnlichen Funktionen:

Python Intellsense http://blog.dispatched.ch/wp-content/uploads/2009/05/omnicompletion.png

Dies ist in Vim 7 Standard. Es gibt eine Reihe weiterer sehr nützlicher Plugins für die Python-Entwicklung in Vim, z. B. Pyflakes , das Code im laufenden Betrieb überprüft, und Python_fn.vim , das Funktionen zur Bearbeitung von Python-Einrückungen bietet & Codeblöcke.

32
redacted

Werfen Sie einen Blick auf Python-Werkzeuge für Visual Studio .

Unten sehen Sie einen Screenshot der interaktiven Shell für Python, der die Codeabwicklung zeigt.

enter image description here

23
Frederic Heem

Die PyDev - Umgebung für Eclipse verfügt über intellisense-ähnliche Funktionen für Python. Es ist sehr hilfreich, eine interaktive Konsole offen zu halten, zusammen mit der Funktion help(item).

19
Paul Fisher

Die dynamische Natur der Sprache macht die Analyse des Autocomplete-Typs schwierig, so dass die Qualität der verschiedenen oben genannten Fertigstellungseinrichtungen stark variiert.

Die ipython-Shell ist zwar nicht genau das, wonach Sie gefragt haben, aber sie eignet sich sehr gut für explorative Arbeiten. Wenn ich mit einem neuen Modul arbeite, neige ich dazu, es in ipython zu ziehen und daran zu stoßen. Die meisten der oben genannten Lösungen wurden bereits ausprobiert (obwohl Wing schon mehrere Jahre her ist). Die Fertigstellungseinrichtungen von ipython sind jedoch durchgängig zuverlässiger. Die zwei Hauptwerkzeuge für das Durchsuchen sind Tabs vollständig und hängen ein Fragezeichen an den Modul-/Funktionsnamen an, um den Hilfetext abzurufen, z.

In [1]: import sqlalchemy

In [2]: sqlalchemy.s #tab completion
sqlalchemy.schema    sqlalchemy.select    sqlalchemy.sql       sqlalchemy.subquery

In [2]: sqlalchemy.select? #Shows docstring

In [3]: sqlalchemy.select?? #Shows method source

In [4]: edit sqlalchemy.select #opens the source in an editor
15
Karl Guertin

Ich empfehle dringend PyDev . In Pydev können Sie das von Ihnen verwendete Modul in die Forced Buildins einfügen. Meistens funktioniert die Code-Vervollständigung besser als in anderen IDEs wie KOMODO EDIT.

Ich denke auch, dass IPython sehr hilfreich ist. Da es sich um eine Laufzeit in IPython handelt, wird der Code-Vervollständigung in IPython nichts entgehen.

9
jagttt

Der mit Python gelieferte IDLE-Editor verfügt über eine Intellisense-Funktion, die importierte Module, Funktionen, Klassen und Attribute automatisch erkennt.

8
Soviut

PyCharm ist der beste Python IDE mit IntelliSense-Unterstützung.

7
dns

Beispielsweise implementiert Wingware die automatische Vervollständigung, siehe http://wingware.com/doc/edit/auto-completion .

5
Alex Martelli

Ich würde Komodo Edit empfehlen. Ich sollte jedoch auf etwas hinweisen: Sie werden nicht so gut bekommen, wie Sie es von Visual Studio mit C # Intellisense gewohnt sind. Die dynamische Natur von Python kann es schwierig machen, diese Art von Funktionen auszuführen.

5
Jason Baker

ctags + vim funktioniert auch ok, obwohl es nicht so mächtig ist wie Intelligenz. Mit ipython können Sie Online-Hilfe, automatische Namensvervollständigung usw. abrufen. Dies ist jedoch offensichtlich auf die Befehlszeile ausgerichtet.

Eclipse + pydev kann das auch, aber ich habe keine Erfahrung damit: http://pydev.sourceforge.net/

4

Ich denke, der dynamischste Weg, um Python zu lernen, ist die Verwendung von iPython .

Sie haben eine automatische Vervollständigung, wenn Sie tab, dynamisches Verhalten verwenden, da es sich um eine Shell handelt, und Sie können die vollständige Dokumentation aller eingegebenen Objekt-/Methoden erhalten:

object.method ?

Bei der Entwicklung stimme ich zu, dass PyDev cool ist. Aber es ist schwer, also ist ein Texteditor + iPython während des Lernens wirklich schön.

3
e-satis

Ich würde jedi-vim empfehlen, es ist perfekt für mich, probiere es aus und du wirst es nicht bereuen.

2
j5shi

Pyscripter hat die beste Intelligenz, die ich getroffen habe :)

2
hugo24

Für Emacs und VI gibt es auch https://github.com/tkf/emacs-jedi .

2
Adam Benzan

IronPython ist der Weg zu gehen. Visual Studio bietet die beste Unterstützung für intellisense und Sie können dies mit IronPython nutzen

0
SiTe

Probieren Sie Visual Studio Code aus. Es verfügt über eine sehr leistungsfähige Python- und Django-Unterstützung und Tausende von Plugins für andere Sprachen, die in einem Python-Projekt verwendet werden, wie CSS-, HTML- und Django-Vorlagen. 

Das Beste ist, dass es kostenlos ist: https://code.visualstudio.com

0
hamzed