Anzeige der zusammengehörigen Programmteile in PyCharm Community Edition

Probleme bei der Installation?
Antworten
Werniman
User
Beiträge: 4
Registriert: Montag 18. Februar 2019, 13:37

Hallo,
ich hoffe, ich kann mein Problem halbwegs verständlich beschreiben. Nun, der Programmcode in der IDE besteht ja im Grunde aus einzelnen "Blöcken" zusammengehöriger Programmbestandteile (z.B. Schleifen, Blockkommentare etc). IDEs wie PyCharm oder Visual Studio zeigen das auch grafisch an, welche Teile zusammengehören. PyCharm Community Edition 2022.2.4 macht das durch zwei sich zugewandte Pfeile, die am Anfang und Ende eines solchen "Blockes" stehen. Siehe Bild 1.

In Visual Studio hingegen ist das in einer Art Baumstruktur gelöst, wo die zusammengehörigen Teile mit einer senkrechten Linie markiert sind, was ich persönlich übersichtlicher finde. Siehe Bild 2. Gibts eine Möglichkeit, das in Pycharm so umzustellen, dass es auch da in dieser Linienoptik angezeigt wird ? Ach ja..stört euch bitte nicht dran, dass da ein paar Wörter unterstrichen sind..ich habe einfach nur willkürlich ein Stücke Code aus einem anderen Programm rauskopiert und in eine neue Datei eingefügt (wie man ja auch an den Zeilennummern sieht).

Bild
Bild
Benutzeravatar
__blackjack__
User
Beiträge: 13103
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Werniman: Im Grunde ist das doch die gleiche Darstellung, nur das bei VS die Endmarkierung fehlt. Tatsächlich fehlt, weil das ja eigentlich gar keine optische Frage ist, sondern diese Bedienelemente sind zum „Falten“/„Einklappen“ von Quelltextblöcken da und bei PyCharm kann man da an beiden Enden den Block per Mausklick „einklappen“, bei VS anscheinend nur am Anfang.

Und wenn man diese Funktionalität nicht verwendet, ist doch die reine grafische Darstellung sowieso nur redundant zu der Einrückung an der man das ja auch sehen kann wo ein Block anfängt und aufhört. *Und* beide IDEs unterstützen das auch noch durch vertikale Linien im Textbereich die vom Blockanfang ausgehend laufen.

Inhaltlich: Das sollte `ist_palindrom` geschrieben werden, eine ``for``-Schleife über `i` sein, und die Schleife kann man natürlich verlassen wenn man die ersten nicht übereinstimmenden Zeichen gefunden hat.

Edit: `laenge` hat in dem Indexzugriff auch nix verloren, und eigentlich wäre das in Python das hier (ungetestet), denn Python ist nicht Pascal:

Code: Alles auswählen

ist_palindrom = all(wort[i] == wort[-i - 1] for i in range(len(wort) // 2))
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Antworten