Statischer Python-Code-Analyser mit GUI — findet ungenutzte Imports, tote Definitionen und aehnliche Code-Bloecke
| Feature | Beschreibung |
|---|---|
| AST-Analyse | Praezise Analyse via Python Abstract Syntax Tree |
| Import-Tracking | Erkennt genutzte und ungenutzte Imports |
| Methoden-Katalog | Listet alle Funktionen, Methoden und Klassen |
| Duplikat-Erkennung | Findet aehnliche Code-Bloecke (konfigurierbarer Schwellwert, Standard: 80%) |
| Framework-Erkennung | Erkennt ob Definitionen von Tkinter, requests, asyncio u.a. implizit genutzt werden |
| Callback-Erkennung | Identifiziert Callback-Funktionen korrekt als genutzt |
| Multi-File | Ganze Python-Projekte rekursiv analysieren |
| GUI | Einfache Tkinter-Oberflaeche, kein Terminal noetig |
| Feature | MethodenAnalyser | pylint | flake8 | vulture | radon |
|---|---|---|---|---|---|
| Ungenutzte Imports | ✅ | ✅ | ✅ | ❌ | |
| Ungenutzte Definitionen | ✅ | ❌ | ✅ | ❌ | |
| Code-Aehnlichkeit | ✅ | ❌ | ❌ | ❌ | ❌ |
| Framework-Erkennung | ✅ | ❌ | ❌ | ❌ | |
| GUI | ✅ | ❌ | ❌ | ❌ | ❌ |
| Callback-Erkennung | ✅ | ❌ | ❌ | ❌ | |
| Keine Installation | ✅ | ❌ | ❌ | ❌ | ❌ |
Keine externen Abhaengigkeiten. Nur Python 3.10+ benoetigt.
git clone https://github.com/lukisch/MethodenAnalyser.git
cd MethodenAnalyser
python MethodenAnalyser3.pyOder unter Windows per Doppelklick auf START.bat.
- Tool starten (
python MethodenAnalyser3.pyoderSTART.bat) - "Datei analysieren" klicken und
.py-Datei auswaehlen - Ergebnisse werden im Ausgabefenster angezeigt
- "Projekt analysieren" klicken und Projektordner auswaehlen
- Alle
.py-Dateien werden rekursiv durchsucht - Aggregierter Projekt-Report mit Score wird ausgegeben
=== ANALYSE: my_script.py ===
IMPORTS (3 gesamt):
✅ os — genutzt
✅ json — genutzt
⚠️ pathlib — moeglicherweise ungenutzt
DEFINITIONEN (5 gesamt):
✅ main()
✅ load_config()
⚠️ old_helper() — nicht referenziert
AEHNLICHE CODE-BLOECKE (Schwellwert: 80%):
Zeilen 42-55 ↔ Zeilen 88-101 (Aehnlichkeit: 91%)
Im Quellcode anpassbar:
SIMILARITY_THRESHOLD = 0.8 # Schwellwert fuer Duplikat-Erkennung (0.0 - 1.0)
WINDOW_GEOMETRY = "1200x700" # FenstergrösseDieses Projekt steht unter der MIT License.
A static Python code analyzer with AST analysis, duplicate detection, and GUI.
- AST-based analysis
- Duplicate code detection
- Method complexity metrics
- Interactive GUI
git clone https://github.com/lukisch/REL-PUB_MethodenAnalyser.git
cd REL-PUB_MethodenAnalyser
pip install -r requirements.txt
python "MethodenAnalyser3.py"See LICENSE for details.