Wer arbeitet mit Python?

Status
Für weitere Antworten geschlossen.
C0r€

C0r€

||
Ich benutze Python aktuell seit ein paar Jahren für Analysen usw, vorher hatte ich Matlab dafür eingesetzt, GB von Daten durchgerechnet/ausgewertet. Mit Python bin ich da gefühlt 10x schneller bei der Implementierung, aufgrund der guten libraries, und der code ist einfacher verständlich. Manchmal gibt es Hürden wegen pandas vs numpy usw, weil Daten umformatiert werden müssen (z.B. flasche Datentypen), das kann kompliziert werden, geht aber immer irgendwie zu lösen und ist für mich insgesamt immer noch komfortabler als z.B. Matlab. Für "Programme" würde ich es allerdings eher nicht nehmen, also "klassische" Software mit UI und viel User-Interaktion. Ich denke die Stärke liegt eher im Analysieren von Daten, Plotten usw., quasi batch-processing, Datenpipelines aufsetzen und durch vorkompilierte Bibliotheken durchschleusen.
Die besseren Bibliotheken sind auch bereits C++ vorkompiliert mit python API, sonst wäre das schnarchlangsam. Als Zwischenschritt kann man da auch Cython einsetzen, ist jedoch nicht supereinfach und lohnt sich eher wenn etwas oft ausgeführt wird.
Auch mit Jupyter Notebooks bzw. Jupyter Lab zu arbeiten ist ganz nett, da man den code so gleich interaktiv dokumentieren kann, das ist für gewisse Aufgaben besser als .py skripte über die Shell auszuführen. Vor allem, wenn es nur 1x ausgeführt wird.
 
Max

Max

|||||
Ja, wenn es um Ausführungsgeschwindigkeit geht, nein, wenn es um modernen, einfach lesbaren Code geht. Da ist Python weit vorne.

Du hast mein Zitat hier etwas aus dem Zusammenhang genommen, denn es bezog sich ausschließlich auf den Timing-Aspekt.

Aber auch das Thema "lesbarer Code" sehe ich etwas zwiegespalten - Python ist nicht die einzige moderne Sprache mit der man lesbaren Code produzieren kann und leider ist es in meiner Wahrnehmung auch tatsächlich oft so dass viele "real existierende" Python-Projekte eine ziemlich schlechte Code-Qualität haben.
 
SynthGate

SynthGate

Elektro-Aspirant(ina?)
Das war nicht mein Ansinnen, sorry.

Ich kenne auch viele "real existierende" Projekte mit schlechtem Code, in so ziemlich allen Sprachen. Das hat aber wenig mit der Sprache an sich zu tun. Eine der wenigen Möglichkeiten, dem entgegenzuwirken, ist funktional zu schreiben. Aber ich würde sagen, dass ist nur für Geübte wirklich lesbar, und geht mit Python ja auch zu 95%. Und ja, inzwischen gibt es mit Swift, Scala etc. noch modernere Sprachen, (die im Übrigen nicht wenige Aspekte von Python übernommen haben), Python hat ja auch schon einige Jahre auf dem Buckel. Als ich es vor 15 Jahren eingesetzt habe, war es von der Lesbarkeit unübertroffen, wir haben damit Dinge in kürzester Zeit hochgezogen, die in der Art in keiner anderen Sprache ohne Weiteres möglich gewesen wären, meiner Meinung nach. Und wie gesagt, Indentations haben in der Zeit nie eine Rolle gespielt.
 
2bit

2bit

||||||||
Dieser Blödsinn wird immer wieder behauptet, und trotzdem hatte ich in 7 Jahren massiven Python-Gebrauchs nur einmal ein Problem damit, was nach 10 Minuten behoben war.

Schön für dich. Der Punkt ist, dass diese Designentscheidung halt einen Rattenschwanz weiterer Konsequenzen nach sich zieht. Eine davon ist übrigens, dass man manche Probleme GAR NICHT angehen kann. Weiter oben wurde bereits das Fehlen der Switch-Struktur angesprochen. Und weißte, warum man die bis heute nicht standardmäßi8g in Python implementiert hat? Weil das bescheuerte Whitespace-Design keine eindeutige Semantik zulässt. Steht alles schwarz auf weiß in PEP 3103: https://www.python.org/dev/peps/pep-3103/
 
SynthGate

SynthGate

Elektro-Aspirant(ina?)
Und ich dachte, hier ginge es um Python und MIDI, und nicht um "manche Probleme", aber egal ...
Diese Argumentation von dir habe ich schon mancherorts gesehen, erwarte sie und ignoriere sie in Zukunft auch wieder.
 
2bit

2bit

||||||||
Und ich dachte, hier ginge es um Python und MIDI, und nicht um "manche Probleme", aber egal ...
Diese Argumentation von dir habe ich schon mancherorts gesehen, erwarte sie und ignoriere sie in Zukunft auch wieder.

Ja, besser wärs...

Ich hab den Thread nach über einem Jahr allgemeiner Teilnahmslosigkeit hier wieder aus der Versenkung geholt, weil ich mich trotz meiner Vorbehalte mit dem Thema tatsächlich auseinandergesetzt habe und beim praktischen Coden in dieser ach so einfachen Sprache über einen Haufen sehr seltsamer Macken und Eigenheiten gestolpert bin.

Hätte ich bloß meinen Mund gehalten und die Machbarkeit, ein Mididevice per Python zu was anderem umzufunktionieren, für mich behalten. Diese substanzlose Besserwissermentalität von Leuten, die keinen konkreten Einblick haben, ist echt atemberaubend.
 
SynthGate

SynthGate

Elektro-Aspirant(ina?)
Stimmt, nach mindestens 7 Jahren habe ich keinen konkreten Einblick. Danke für diese Erkenntnis, oh du grenzenloses Genie.
 
2bit

2bit

||||||||
Stimmt, nach mindestens 7 Jahren habe ich keinen konkreten Einblick.

Nö, du hast tatsächlich NULL Einblick. Weder hast du in meine Quelltexte gesehen, noch hast du meinem Lernprozess beigewohnt, noch weißt du, welches Vorwissen ich aus anderen Programmiersprachen mitgebracht habe. Deine 7 Jahren Erfahrung haben hier keinerlei Relevanz. Du saugst mich dumm von der Seite an. EOL
 
SynthGate

SynthGate

Elektro-Aspirant(ina?)
Tatsächlich, zeig mir mal die Stelle, wo ich das getan habe ...
Weder hast du in meine Quelltexte gesehen, noch hast du meinem Lernprozess beigewohnt, noch weißt du, welches Vorwissen ich aus anderen Programmiersprachen mitgebracht habe.

Ach ja, und dito.
 
SynthGate

SynthGate

Elektro-Aspirant(ina?)
Nö, du hast tatsächlich NULL Einblick. Weder hast du in meine Quelltexte gesehen, noch hast du meinem Lernprozess beigewohnt, noch weißt du, welches Vorwissen ich aus anderen Programmiersprachen mitgebracht habe. Deine 7 Jahren Erfahrung haben hier keinerlei Relevanz. Du saugst mich dumm von der Seite an. EOL
Ich sehe immer nur mein, meinem und ich, das reicht mir schon ...

WO habe ich etwas von "hottest shit evar" geschrieben? Werd mal konkret. Und sieh dir mal den Hiobe an, oder auch andere Statistiken. Wenn Python so unbrauchbar ist, dann sind alle anderen, außer dir, wohl völlig dumm und unfähig.
 
Klinkenstecker

Klinkenstecker

|
Ich kenne auch viele "real existierende" Projekte mit schlechtem Code, in so ziemlich allen Sprachen. Eine der wenigen Möglichkeiten, dem entgegenzuwirken, ist funktional zu schreiben. Aber ich würde sagen, dass ist nur für Geübte wirklich lesbar, und geht mit Python ja auch zu 95%.
Zu 95%? Mit anonymen Funktionen die nur ein einziges Statement beinhalten dürfen? Da Rossum am liebsten auch noch gleich ganz entfernt hätte? Und das "für Geübte" ist genau das Problem von Python, die Anspruchslosigkeit zieht sich wie ein roter Pfaden durch die Sprache und ziemlich viele der Bibliotheken.
Und ja, inzwischen gibt es mit Swift, Scala etc. noch modernere Sprachen, (die im Übrigen nicht wenige Aspekte von Python übernommen haben), Python hat ja auch schon einige Jahre auf dem Buckel. Als ich es vor 15 Jahren eingesetzt habe, war es von der Lesbarkeit unübertroffen, wir haben damit Dinge in kürzester Zeit hochgezogen, die in der Art in keiner anderen Sprache ohne Weiteres möglich gewesen wären, meiner Meinung nach. Und wie gesagt, Indentations haben in der Zeit nie eine Rolle gespielt.
Als Scala-Entwickler bin ich mal sehr gespannt, ob Du mir ein konkretes Beispiel dafür nennen kannst, wo Aspkete von Python übernommen worden sein sollen. Und ja, vor 15 Jahren war Python ein Fortschritt gegenüber perl und bash und auch matlab, aber das ist kein Grund es heute noch hochzujazzen, obwohl es wirklich genug deutlich durchdachtere Programmiersprachen gibt. Gerade bei diesen beiden Sprachen kann man sehr gut lernen, was für ein Unterschied es macht, ob da Leute systematisch und akademisch eine Sprache entwickeln, oder mal so als Hobbyprojekt.
Ja, wenn es um Ausführungsgeschwindigkeit geht, nein, wenn es um modernen, einfach lesbaren Code geht. Da ist Python weit vorne.
Sorry, aber wenn ich numpy/pandas Code mit R/tidyverse Code vergleiche, dann halte ich Python weder für modern, noch für einfach lesbar.
Dieser Blödsinn wird immer wieder behauptet, und trotzdem hatte ich in 7 Jahren massiven Python-Gebrauchs nur einmal ein Problem damit, was nach 10 Minuten behoben war. Und dafür 7 Jahre keine Klammern, die entweder Zeilen fressen oder einfach nur doof aussehen ("} else {").
Die so doof aussehenden Klammern fressen keine einzige Zeile, wenn man den entsprechenden Style bevorzugt, und sparen im Gegenteil sogar Zeilen, da ich z.B. simple if-expressions in eine Zeile schreiben kann. Ich sehe wirklich keinen einzigen Vorteil davon, die Strukturierung durch Symbole aufzugeben, der Editor ist Dein Freund und hat durch die Klammern sichere Information über Deine Absichten. Aber wenn jemand die Ästhetik wichtiger ist als die Funktionalität...

Nach einigen Jahren gezwungener Arbeit mit Python (wobei ich da am Anfang neutral reingegangen bin, heute würde ich da deutlich mein Veto bei einem ähnlichen Projektstart einlegen) gehen wir Statements wie diese echt auf den Senkel. Ich habe schon mit vielen Sprachen Erfahrung, aber noch keine Community vorgefunden, die so selbst überzeugt von Ihrer Sprache ist und man aber gleichzeitig bei den Statements erkennen kann, dass der Horizont doch recht eingeschränkt ist.
 
SynthGate

SynthGate

Elektro-Aspirant(ina?)
... Gerade bei diesen beiden Sprachen kann man sehr gut lernen, was für ein Unterschied es macht, ob da Leute systematisch und akademisch eine Sprache entwickeln, oder mal so als Hobbyprojekt.
Ich "jazze" hier gar nichts hoch, sondern sage meine Meinung, die ja nicht deiner entsprechen muss. Immerhin sind auf meiner Seite einize Zehntausende Zeilen Code entstanden, und da hat nie jemand wegen Unlesbarkeit nachgefragt von den anderen Entwicklern. Na bei deiner Vorbildung sollte es dann ja kein Problem sein, endlich die einzig wahre Programmiersprache zu schreiben. Viel Erfolg damit.

Nach einigen Jahren gezwungener Arbeit mit Python (wobei ich da am Anfang neutral reingegangen bin, heute würde ich da deutlich mein Veto bei einem ähnlichen Projektstart einlegen) gehen wir Statements wie diese echt auf den Senkel. Ich habe schon mit vielen Sprachen Erfahrung, aber noch keine Community vorgefunden, die so selbst überzeugt von Ihrer Sprache ist und man aber gleichzeitig bei den Statements erkennen kann, dass der Horizont doch recht eingeschränkt ist.
Weisst du, da liegt das Problem begraben, mehr sage ich zu dem Thema hier nicht mehr. Wer zwingt dich denn mit Python zu arbeiten oder kettet dich an deinen Arbeitsplatz? Unzufrieden? Dann wechsel oder lass deine Frust auf deiner Arbeit ab, da wo sie ja anscheinend entstanden ist. Sollte ja kein Ding sein, mit deinen Vorbildung.

Die so doof aussehenden Klammern fressen keine einzige Zeile, wenn man den entsprechenden Style bevorzugt, und sparen im Gegenteil sogar Zeilen, da ich z.B. simple if-expressions in eine Zeile schreiben kann. Ich sehe wirklich keinen einzigen Vorteil davon, die Strukturierung durch Symbole aufzugeben, der Editor ist Dein Freund und hat durch die Klammern sichere Information über Deine Absichten. Aber wenn jemand die Ästhetik wichtiger ist als die Funktionalität...
Wozu überhaupt Zeilen? Oder Whitespace.

Ich habe auch in Assembler, C, C++, Java, Perl, Python, bash, ... programmiert. Und? Und ich bleibe trotzdem bei meiner Aussage. Und wenn es dir nicht passt, sorry.
 
Klinkenstecker

Klinkenstecker

|
Ich "jazze" hier gar nichts hoch, sondern sage meine Meinung, die ja nicht deiner entsprechen muss. Immerhin sind auf meiner Seite einize Zehntausende Zeilen Code entstanden, und da hat nie jemand wegen Unlesbarkeit nachgefragt von den anderen Entwicklern. Na bei deiner Vorbildung sollte es dann ja kein Problem sein, endlich die einzig wahre Programmiersprache zu schreiben. Viel Erfolg damit.
Sorry wen Du jetzt vor allem mein Frust über die Python-Community abbekommst, aber Deine Kommentare haben genug von dem, was mir da immer über den Weg gelaufen ist, und mich entsprechend angetriggert (ich warte übrigens immer noch auf eine Antwort, welche Einfluss Python auf Scala gehabt haben soll). Und an sowas wie die einzig wahre Programmiersprache glaube ich nicht, die geeignete Programmiersprache hängt immer an dem Problem ab. Es benutzte daher sogar immer noch ganz freiwillig manchmal kleinere Python-Skripte.

Weisst du, da liegt das Problem begraben, mehr sage ich zu dem Thema hier nicht mehr. Wer zwingt dich denn mit Python zu arbeiten oder kettet dich an deinen Arbeitsplatz? Unzufrieden? Dann wechsel oder lass deine Frust auf deiner Arbeit ab, da wo sie ja anscheinend entstanden ist. Sollte ja kein Ding sein, mit deinen Vorbildung.
Du wirst lachen, ich habe mittlerweile einen andereren Arbeitsplatz. Obwohl bei meinem alten das Projekt abgeschossen war, und ich spannende Sachen mit R/shiny machen konnte. Ganz abgesehen davon war das damals trotzdem auch ein spannendes Projekt und ein spannendes Team, da nehme ich dann auch mal Python in Kauf (und glaube mir, mein Unmut habe ich dort auch oft genug geäußert, wir hatten aus dem Fehler ja auch gelernt). Ich nehme mir aber trotzdem die Freiheit hier im Forum mich einzumischen, Du nimmst Dir ja auch das Recht Deine Meinung zu sagen, warum soll ich also bitte meine nur im Büro sagen dürfen? Also erspar Dir lieber Deine versuchten persönlichen Angriffe und geh mal lieber auf die inhaltlichen Argumente ein.

Wozu überhaupt Zeilen? Oder Whitespace.

Ich habe auch in Assembler, C, C++, Java, Perl, Python, bash, ... programmiert. Und? Und ich bleibe trotzdem bei meiner Aussage. Und wenn es dir nicht passt, sorry.
Du hast mit den Zeilenquatsch angefangen, incl. Fehlinformation. Aber insgesamt ist das Strukturieren durch Einrückungen eigentlich tatsächlich ein eher kleines Problem von Python. Und jetzt wirklich nur als guten Tip gemeint: Wenn Du das noch nicht gemacht hast, schau Dir wirklich mal ernsthaft eine funktionale Programmiersprache wie z.B. Haskell an.
 
Zuletzt bearbeitet:
psilo-core

psilo-core

|
Python, C? Was ist denn das hier für ein Kindergarten? Ich dachte das sei ein Nerd Forum: Also bitte, wieso gehts hier nicht um Lisp und Fortran?
 
OutOfTune

OutOfTune

|
Hallo,


Dieser Blödsinn wird immer wieder behauptet, und trotzdem hatte ich in 7 Jahren massiven Python-Gebrauchs nur einmal ein Problem damit, was nach 10 Minuten behoben war.

das bescheuerte Whitespace-Design

Die so doof aussehenden Klammern fressen keine einzige Zeile, wenn man den entsprechenden Style bevorzugt,

Wozu überhaupt Zeilen? Oder Whitespace.

Ist doch alles Geschmackssache...
Im Grunde sind die Klammern doch nur dazu da, damit faule Säcke (wie ich einer bin :cool:) alles in einer Zeile mit minimalen Whitespaces tippen können und es vom Editor/Entwicklungsumgebung automatisch formatieren lassen können.


Gruß
Gerhard
 
SynthGate

SynthGate

Elektro-Aspirant(ina?)
Zumindest ist das eine Basis, auf der sich auch kommunizieren lässt. Und wer Probleme in Python mit Whitespaces hat, hat vielleicht einfach seinen Editor/sein IDE nicht im Griff? Der eigentliche Punkt ist: jede Sprache hat ihre Pros und Contras, als Python rauskaum, war es eine einfach zu erlernde Sprache, die viele Paradigmen unter einem Hut versammelt hatte und mit der man schnell zum Ziel kam, und hinterher war der Code auch für andere problemlos lesbar. Es gibt genug Sprachen (Perl ist eine von mehreren), wo man richtig schön "obfuscated" schreiben kann.

Du hast mit den Zeilenquatsch angefangen, incl. Fehlinformation. Aber insgesamt ist das Strukturieren durch Einrückungen eigentlich tatsächlich ein eher kleines Problem von Python. Und jetzt wirklich nur als guten Tip gemeint: Wenn Du das noch nicht gemacht hast, schau Dir wirklich mal ernsthaft eine funktionale Programmiersprache wie z.B. Haskell an.
Nein, jemand anders hat angefangen sich über Whitespaces aufzuregen. Darauf bin ich eingegangen. Haskell? Das habe ich schon vor Jahrzehnten gemacht ... ;-)
 
Moogulator

Moogulator

Admin
MOD: Auf dieser Ebene über ein technisches Ding zu sprechen ist unnötig "hart" für die Beteiligten.
Vielleicht ist es besser neu zu beginnen - da habt ihr euch sehr verrannt.

Ein bisschen zurück gehen und etwas weniger intensiv hätte das vielleicht gelöst.
Hier sieht das so nach Könnenduell aus - es ist nicht so gemeint - aber das ist schade und mit verlaub - sehr "männlich" im Sinne von allen Klischees die man so kennt.

@ Thread - Persönlich werden - dafür habe ich 0 Verständnis bei dieser Vorlage. Es ging um "nichts" .. Ist gegen die Regeln.
Wahnsinnig schade so ein Thema so unschön gockelig zu gestalten.
Es fühlen sich einige verletzt und das muss wirklich nicht sein. Neu machen.
Echte Kerle.

Redo from start.
Press any key.
:cursor:
 
Zuletzt bearbeitet:
Status
Für weitere Antworten geschlossen.

Similar threads

 


News

Oben