Python-bashing ...

  • Bin ich der einzige der zuerst die beiden Klammern setzt und dann eins zurück geht, um was in die Klammern reinzuschreiben ?

    Du setzt die selbst? Die schließende Klammer schlägt doch der Editor meist gleich mit vor. Genauso wie das end nach einem begin in Pascal, und das Einrücken in der richtigen Ebene.


    Aber ja, genauso macht man das: Den Rumpf schreiben und dann den Inhalt einfügen. Dann hat man auch keine Probleme mit Verschachtelungen.

  • Das macht eigentlich jede gute IDE. Atom unterstützt Python auch sehr gut.

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect." Linus Torvalds, 28.9.2003

    >>> raspiBackup: Sichere Deine Raspberry regelmäßig im laufenden Betrieb <<<

  • Mahlzeit zusammen,


    da dieses Thema wohl mit aus einem anderen Thema von mir entstanden ist (oder mein Thema zumindest der Tropen auf dem heißen Stein war), möchte ich als totaler Anfänger der Codeerstellung hier mal meinen Senf auf die Bulette schmieren.

    Einiges von dem was ich hier jetzt schreibe ist eher eine Allgemeine Denkweise und könnte auch auf zig andere Themen angewendet werden. Ich will mich also nicht im Bereich Programmieren aus dem Fenster lehnen, sondern eher allgemeine Denkanstöße geben.


    Erstmal ist mir aufgefallen, dass Python wohl gerne von Leuten angegriffen wird, die zwar generell programmieren können, sich aber mit Python selber nicht so wirklich auseinander gesetzt haben. Finde ich generell schade... nicht weil ich Python so geil finde, sondern weil es in so einem Fall einfach nur Vorurteile sind.
    Ich habe mich selber ja für Python entschieden und mir gestern das erste Buch gekauft. Zuvor habe ich aber geschaut, welche Sprache/Sprachen ich ggf für den Pi nutzen möchte (ist ja hier nunmal auch ein Forum für den Pi, nicht für Programmieren [auch wenn das eine zum anderen gehört]).

    Wie ich schon im anderen Thema geschrieben habe, bin ich als Laie der Meinung, dass Python für meine Zwecke erstmal reichen wird. Ob gewisse Dinge ggf mit C besser gelingen würden, dass wüsste ich dann erst, wenn ich beide Sprachen gut kann und das selbe Projekt mit beiden Sprachen verwirklicht habe.

    Hier wird auch geschrieben, dass Python gerne als Copy&Paste genutzt wird von Leute, die sich in die Materie nicht eingearbeitet haben (dies auch oft nicht wollen) und dann mit zusammenkopierten Code hier aufschlagen und die Lösung vorgekaut haben wollen.
    Das liegt nur ganz bedingt... wenn nicht sogar gar nicht an Python, sondern am Marketing um den Pi und der Mentalität der Käufer.
    Der Pi wird als Lern- und Bastelcomputer für den schmalen Taler verkauft. Viele Leute sehen die zum Teil wirklich großartigen Projekte die schlaue Köpfe mit dem Pi verwirklichen und wollen das Ergebnis auch haben. Also wird mal schnell der Pi mit den im Tutorial verlinken Sensoren etc bestellt, zusammen geklöppelt und der Code dem Blog XY kopiert.... hmmm geht nicht, wieso nicht, hab doch alles wie im dem Tutorial von 2009 gemacht...hust

    Fast alle Bücher zum Pi behandeln Python.

    Python wird als leicht zu erlernende Sprache angepriesen.

    Also gehen leider viele davon aus, wenn sie ein Anfängertutorial gelesen, oder sich ein paar Videos auf YouTube angeschaut haben, dass die Programmieren können.


    Das Problem ist aber hier nicht Python, was durch diese Umstände in den Fokus gezogen wurde, sondern die "Anwender" die alles auf dem goldenen Tablett geliefert haben wollen, um dann selber damit zu prahlen, was sie da geiles geschaffen haben.


    Ob Python nun einfach zu lernen ist, ist schwer zu beurteilen würde ich sagen.

    Wer mit Python anfängt, und dabei ggf ein gutes Buch hatte, oder jemand der es ihm gut beigebracht hat, hätte ggf unter diesen Umständen genau so leicht C, C++, Delphi oder sonst was gelernt. Der Kollege daneben, der die gleich Bedingungen hatte kommt ggf gar nicht klar. Das liegt aber auch mit daran, dass jeder Mensch anders lernt.

    Wenn jetzt jemand schon zig andere Sprachen kann, dann kann er das nicht mehr wirklich objektiv beurteilen, weil es immer wieder Parallelen gibt die es unterbewusst nutzt.


    Dass mit den Klammern oder Einrückungen ist so eine Sache.
    Man kann beides von der Pike an lernen und verinnerlichen, dass ist nicht die Frage. Je nach IDE hat man da auch mehr oder weniger hilfreiche Werkzeuge dafür. Aber unumstritten ist doch wohl, dass ein Python geschriebener Code schon durch den zwang des Einrückens ordentlicher und übersichtlicher geschrieben ist. Ich will aber damit nicht sagen, dass der Code in anderen Sprechen automatisch unübersichtlicher sein muss.


    Ich habe bisher zwei Handwerkliche Berufe gelernt und in beiden viele Auszubildende bis zur Prüfung begleitet, und eines könnt ihr mir glauben, ordentliches Arbeiten muss man vielen, gerade wenn es mal hektisch oder kompliziert wird regelrecht einprügeln. Da finde ich ein System, dass zur Ordnung zwingt schon sehr angenehm.


    Ich bin vielleicht nicht der Typische Anfänger, weil es für mich wichtig ist, dass die Grundlagen sitzen und verinnerlicht sind bevor ich anfange eigene freie Projekte zu starten. Aus diesem Grund fange ich auch erst an mich mit Python zu beschäftigen und besorge mir erst dann den Pi. Sonst würde ich nämlich auch Gefahr laufen, dass ich das Teil hier liegen habe, und damit auch was machen möchte, und damit schnell zu dem Punkt komme, dass es "Projekte" ja schon fertig zum runterladen gibt, z.B. "Ich hab mir nen RetroPi gebaut". Nein, solche Leute haben in der Regel den Pi an Strom und TV geklemmt, und den RetroPi fertig runter geladen.


    Weiter habe ich hier entnommen, dass es wohl weitere Sprachen gibt, die mit Variablen und Modulen ähnlich wie Python umgehen. Und ich bin mir sicher, dass all diese Sprachen ihre Daseinsberechtigung haben, es ist halt immer nur die Frage, wie gut kennt der Programmierer sich in allen zum Projekt passenden Sprachen aus, und mit welcher kommt er bei möglichst geringen Zeitaufwand zum möglichst Fehlerfreien und Funktionierenden Ergebnis?


    Ich weiß nicht mehr auf welchem Blog ich das vor ein paar Wochen gelesen habe, aber da ging es auch um die Unterschiede und wieso man besser Python als C lernen sollte (mal abgesehen dass man für bestimmt Bereiche um C wohl nicht drum herrum kommt).

    Da war als Projekt ein kleiner Roboter mit ein paar Sensoren der Würfel und Bälle sortiert und entsprechend rechts oder links in einen Behälter gelegt hat.

    Ich weiß nicht mehr wie viele Zeilen Code es genau waren, aber ich weiß noch, dass man in Python nur knapp ein drittel der Zeilen brauchte aber in beiden Fällen der Roboter das selbe gemacht hat und es in beiden Fällen super funktionierte.

    Das Beispiel ist wahrscheinlich nicht für alles Fälle geltend, aber es war in meinen Augen ein sehr typisches Pi Projekt.


    Meine Einstellung zu dem Ganzen ist wie gesagt aus Lebenserfahrung gebildet und nicht aus Programmiererfahrung. Sollte ich daher mit meinen Ansichten irgendwo ganz daneben liegen, so zeigt und erklärt es mir bitte.


    Beste Grüße

    Mario der für neues immer offen ist ;)

  • Erstmal ist mir aufgefallen, dass Python wohl gerne von Leuten angegriffen wird, die zwar generell programmieren können, sich aber mit Python selber nicht so wirklich auseinander gesetzt haben. Finde ich generell schade... nicht weil ich Python so geil finde, sondern weil es in so einem Fall einfach nur Vorurteile sind......

    Mario der für neues immer offen ist


    Ich hatte schon so viele Sprachen gelernt und zum Teil wieder verlernt und bin nun bei meiner letzten Sprache weit weg von gut.

    Es wäre ein Irrsinn meiner Restlebenszeit geschuldet nun wieder unnötig halbherzig eine neue Sprache zu lernen wenn ich die letzte noch nicht mal vollständig kann, lieber würde ich mich dort weiter entwickeln.

    Auch kann ich viele Module in C vom PC, Atari, win-lcc32, AVR-Studio und Arduino fast 1:1 übernehmen, in Phyton müsste man erst....


    PS nicht böse sein ich bin auch für vieles offen, aber wie heisst es?

    "wer für alles offen ist kann nicht ganz dicht sein"

    lasst die PIs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr

  • in Phyton müsste man erst....

    Sofern ich das Thema verstehe geht es hier primär um Programmieranfaenger. Dazu gehoerst Du ja definitiv nicht.

    dreamshader: allerdings zuviel dieser, mir suspekten, C++ Notation im Spiel

    Dachte ich mir. Leider gibt es auf der Seite kein Beispiel mit reinem C und Pointerarithmetikjongliererei :no_sad: Aber ich finde es trotzdem passend :shy:

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect." Linus Torvalds, 28.9.2003

    >>> raspiBackup: Sichere Deine Raspberry regelmäßig im laufenden Betrieb <<<

  • Sofern ich das Thema verstehe geht es hier primär um Programmieranfaenger. Dazu gehoerst Du ja definitiv nicht.

    war aber auf


    Erstmal ist mir aufgefallen, dass Python wohl gerne von Leuten angegriffen wird, die zwar generell programmieren können, sich aber mit Python selber nicht so wirklich auseinander gesetzt haben

    gemünzt


    ich kann generell programmieren und sehe deswegen keinen Sinn darin mich wieder halbherzig mit einer neuen Sprache zu beschäftigen.

    Ich sehe halt keine Vorteile.


    Programmieren ist programmieren und wenn das Ziel erreicht wird ist die Sprache nebensächlich, es könnte auch ASM, Pascal oder ICON :^^: sein, das macht fürs Ergebnis keinen Unterschied.

    lasst die PIs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr

  • Mir geht es in erster Linie auch darum, dass hier eine Programmiersprache verteufelt wird, obwohl man sie nicht kann.

    Und halbherzig etwas lernen und dann missmutig damit etwas arbeiten wird auch nichts bringen, dass würde eher die vorgestellte Meinung kräftigen.


    Wie gesagt, ist mein genereller Cent zum Thema. Zwei Cent dürfen Leute geben die auch Fachlich das ganze beurteilen können. ;)

  • Hallo,


    kann mal jemand, so rein der Fairness halber, auch einen Thread für anderen Programmiersprachen starten? Also z.B. C-bashing, C++-bashing, Java-bashing etc.

    Und da hier ja alle ein Herz für Randgruppen und selbst kleinste Minderheiten haben, bitte das Icon-bashing nicht vergessen ;-)


    Gruß, noisefloor

  • Ich weiß nicht mehr wie viele Zeilen Code es genau waren, aber ich weiß noch, dass man in Python nur knapp ein drittel der Zeilen brauchte

    Python braucht nur ein Drittel der Zeilen, weil es auf Module zurückgreift - und die sind dann wieder in C geschrieben.


    Großer Vorteil, man muss nicht mehr wissen, was da passiert. Da gehts dann wie im Nachbarthread, wo jemand einen Chip über SPI ansteuern will mit der 100fachen Taktrate, Datenblatt musser nicht lesen, macht ja alles das fertige Modul.


    Und dann mit Python die Heizung steuern. Da läufts mir eiskalt den Rücken runter. Aber macht mal.

  • Und dann mit Python die Heizung steuern. Da läufts mir eiskalt den Rücken runter. Aber macht mal

    Und was spricht jetzt dagegen mit Python das Thermostat zu steuern? Die Heizung selber bestimmt nicht, zumindest nicht meine.
    Wie gesagt, bin Anfänger, daher bitte keine Anmerkung, sondern Erklärungen. Nur so kann ich lernen ;)

  • kann mal jemand, so rein der Fairness halber, auch einen Thread für anderen Programmiersprachen starten? Also z.B. C-bashing, C++-bashing, Java-bashing etc.

    Wie ich schon oben geschrieben habe finde ich solche Diskussionen wo Programmiersprachen verglichen werden - hier wird nur eine niedergemacht aber indirekt auch mit anderen Sprachen verglichen - sinnfrei.

    Wir befinden uns hier im OT Bereich und jeder kann fuer sich entscheiden ob er sinnfrei mitlesen- oder -beitragen will. Ich fuer meinen Teil finde es schon interessant was Leute so ueber Python zu meckern haben. Solange niemand in den Beitraegen persoenlich wird finde ich es OK. Ansonsten wird sicherlich dbv berechtigterweise einschreiten :fies:


    Wenn es Dir danach ist - warum machst Du dann nicht einen C-bashing Thread im OT auf? Wer austeilt muss auch einstecken - und ds wird das sicherlich verkraften :lol:

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect." Linus Torvalds, 28.9.2003

    >>> raspiBackup: Sichere Deine Raspberry regelmäßig im laufenden Betrieb <<<

  • Also ich finde so ein Thema gar nicht so unübel in gewisser Hinsicht.
    Ich hab mal in einem Forum ein Beitrag gelesen wo einer Frage, was man denn nun alles mit Python so machen kann.
    Und laut den ganzen Antworten kann man in Python wirklich alles machen außer Treiber programmieren, dass wiederrum ginge nur in C. (ich lasse das mal so im Raum stehen)

    Wenn hier mehr Fachliche Dinge für Anfänger gut erörtert werden würden, zum Beispiel wieso man am Pi (weil es ja noch immer ein Pi-Forum ist) Projekt XY viel besser mit C, oder Pascal umsetzen sollte weil.... dann könnte so mancher der Python für das Patentmittel für alles hält ggf nen anderen, in dem Fall besseren Weg einschlagen.
    Nur leider ist das aktuell aus meiner Sicht nicht so. Hier ist leider nur, wie der Titel schon sagt, bashing angesagt.

  • Hallo,


    framp - nee, ich liebe ja alle Programmiersprache. Was aber nichts daran ändert, dass Python natürlich die beste Programmiersprache on Earth ist. Haben nur noch nicht alle erkannt, wie in diesem Thread ersichtlich ist ;-)


    Gruß, noisefloor

  • Das waere jetzt ein weitere sinnfreier OT Thread - was ist die beste Programmiersprache on Earth :lol: Wir sollten aufpassen dass wir hier nicht nur noch sinnfrei Threads zu Programmiersprachen reinstellen :shy: - es gibt Wichtigeres

    "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect." Linus Torvalds, 28.9.2003

    >>> raspiBackup: Sichere Deine Raspberry regelmäßig im laufenden Betrieb <<<

  • Hallo Timm Thaler, hallo nosefloor,


    Timm Thaler , das dürfte Ärger geben...

    Python braucht nur ein Drittel der Zeilen, weil es auf Module zurückgreift - und die sind dann wieder in C geschrieben.


    Großer Vorteil, man muss nicht mehr wissen, was da passiert. Da gehts dann wie im Nachbarthread, wo jemand einen Chip über SPI ansteuern will mit der 100fachen Taktrate, Datenblatt musser nicht lesen, macht ja alles das fertige Modul.


    Und dann mit Python die Heizung steuern. Da läufts mir eiskalt den Rücken runter. Aber macht mal.


    Das habe ich in einem anderen Thread auch mal gebracht - und mit etlichen Beispielen und Quellennachweisen gezeigt, dass viele der üblichen in Python eingesetzten Libraries in C bzw. C++ geschrieben sind. Und dass das der Hauptgrund ist, woraus Python seine Geschwindigkeit bezieht. Da gab's ordentlich Prügel. Die blauen Flecke spüre ich heute noch.


    Ändert aber natürlich an der Tatsache nichts.


    Und wann immer ich einen Code in Icon früher gepostet habe, und der später erarbeitete Code in Python teilweise 4mal soviel Zeilen benötigte, waren da einige Pythonier sichtlich ungehalten. Und führten das auf Icon-Bibliotheken zurück. Als wenn in Python niemand Bibliotheken nutzen würde. Und damit beißt sich die Katze in den eigenen Schwanz. AUTSCH!



    Und da hier ja alle ein Herz für Randgruppen und selbst kleinste Minderheiten haben, bitte das Icon-bashing nicht vergessen ;-)


    Gerne - aber dann sollten der Fairness halber auch nur Leute mitmachen, die die Icon-Tutorials durchgearbeitet haben. Denn wenn Du meine früheren Beiträge lesen solltest, ich habe 2014 bis ungefähr 2015 sicherlich um die 100 Python-Threads gelöst. Nicht als einer von mehreren zur Lösung beigetragen sondern die Lösung inkl. Code gepostet. Deswegen finde ich es von einigen hier recht vermessen, ständig zu behaupten, ich würde von Python nichts verstehen.


    Leider sind ein paar User, die mit Icon richtig weit gekommen sind, hier im Forum nicht mehr aktiv.


    Auf einen Austausch auf einem geistvollen Niveau freue ich mich jedenfalls immer.



    Beste Grüße


    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    • Icon-Tutorials (IDE: Geany) - GPIO-Library - µController-Programmierung in Icon! - ser. Devices - kein Support per PM / Konversation

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

  • Hi,

    bitte das Icon-bashing nicht vergessen

    noisefloor : na dann aber los ... mach mal ;) (Feigling, Feigling, ... *lol*)



    Wer austeilt muss auch einstecken - und ds wird das sicherlich verkraften

    worauf Du Dich verlassen kannst :) ....


    cu,

    -ds-

  • Hi dreamshader,

    worauf Du Dich verlassen kannst :) ....

    da helfe ich Dir... Und der, bei dem wir einstens gegrillt haben, sicherlich auch.


    Beste Grüße


    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    • Icon-Tutorials (IDE: Geany) - GPIO-Library - µController-Programmierung in Icon! - ser. Devices - kein Support per PM / Konversation

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.