2010-01-13 4 views
10

Wenn ich in der Python-Konsole bin und ich möchte sehen, wie ein bestimmtes Modul funktioniert, gibt es eine einfache Möglichkeit, die Quelle zu dumpen?gibt es eine Möglichkeit, die Quelle eines Moduls aus der Python-Konsole zu sehen?

+0

Diese Frage ergibt keinen Sinn. Alle Python-Module werden als Quelle geliefert. Sie können sie trivial lesen. Sie befinden sich im Dateisystem als Quelle. Haben Sie Probleme, die Python-Bibliotheken zu finden? Kannst du kein zweites Fenster öffnen? –

+0

Die Frage war, ob es eine einfache Möglichkeit gab, es von der Konsole aus zu tun. Das inspect-Modul ist genau das, was ich gesucht habe. – tehryan

+0

Voting zum erneuten Öffnen, da die als Duplikat verknüpfte Frage nach einer Funktion und nicht nach einem Modul fragt. Die Antwort ist die gleiche, aber jemand, der nach dieser Frage sucht, würde nicht unbedingt die andere Frage stellen. –

Antwort

17

Einige der Methoden der inspect Modul werden für diesen Zweck gut geeignet:

import module 
import inspect 
src = inspect.getsource(module) 
0

Vielleicht

print open('mymodule.py').read() 

?

Siehe file.read().

+0

Dies speichert den Inhalt jeder Datei. – Kugel

+0

Damit dies funktioniert, müssten Sie sich in dem Verzeichnis befinden, in dem das Modul platziert ist. Sorta besiegt den Zweck meiner Meinung nach. – KingMak

4

Mit IPython, können Sie dies tun:

In [1]: import pyparsing 
In [2]: pyparsing.Word?? 

... und die Quelle angezeigt wird , wenn möglich. Ich denke, das muss inspect unter der Haube verwenden, aber der zusätzliche Komfort von?/?? ist fantastisch.

Verwandte Themen