Python 3.5 EOL

  • Hallo zusammen,


    Python 3.5 hat vor kurzem sein end of life erreicht:

    Quote

    Python 3.5 is no longer supported. There will be no more bug fixes or security patches for the 3.5 series, and Python 3.5.10 is the last release. The Python core development community recommends that all remaining Python 3.5 users should upgrade to the latest version

    Python 3.5 ist bei Debian/Raspbian Stretch die standardmässig installierte Version, also falls das noch jemand verwendet - Zeit für ein Upgrade! ;)


    Für 3rd-party Libraries ist das ebenfalls interessant da diese in ihrem Code nun u.a. bedenkenlos f-Strings verwenden können - die es ja seit 3.6 gibt.

  • Wahrscheinlich bereue ich zu fragen, aber was ist wo bloss los‽

    “If debugging is the process of removing software bugs, then programming must be the process of putting them in.” — Edsger Dijkstra

  • Seit dem Release von Python 3.5, habe ich Python 2.7 nicht mehr verwendet.

    Das ist schon wieder 5 Jahre her, eine halbe Ewigkeit in der IT.


    Kann den Release von Python 3.9 kaum erwarten...

  • Wahrscheinlich bereue ich zu fragen, aber was ist wo bloss los‽

    heheh... ich hab 2 python Scripts und komischerweise laufen die immer noch.

    Erst der Shock python2.7 gekillt und jetzt das :) ich hab keine Ahnung was ich da machen soll, sollte es nicht mehr gehen. Aber bis jetzt geht das GPS Script nocht. Oh da hab ich eine Frage!!!

    Ist Python ein Script wenn kein __main__ drin ist. Oder gibt es gar keine Pythhon Scripte sondern nur Programme??

    Aber eigentlich auch egal, wenn eine Endlosschleife drin steht ohne __main__.

  • Code
    ...
    
    
    if __name__ == "__main__":
        print("Dieser Code wird beim Import des Moduls nicht ausgeführt")


    Deswegen nutzt man __main__.

    Es soll verhindern, dass Aktionen durch den Import von Modulen ausgeführt werden.


    Was ein Script ist, ist nicht so ganz klar definiert. Man meint damit interpretierte Sprachen und meist Code unter 1000 Zeilen.

    Ich glaube da hat jeder eine andere Definition im Kopf.


    Nenn es einfach Programm, auch wenn es nur 10 Zeilen code sind ^^

  • Hallo,


    mit Python 3.5 hat asyncio "richtig" Einzug in Python gehalten. Klar gab es da schon was in Python 3.4, aber da musst man ja noch Coroutinen nutzen. `async ` und `await` haben ja erst mit Python 3.5 Einzug gehalten.

  • det_lev_da Du solltest auf eine aktuellere Python-Version umsteigen. Das im Grunde schon seit Jahren, weil ja a) bekannt war das Python 2.7 die letzte 2er-Version sein wird und b) das die tatsächlich auch ihr EOL erreichen wird, auch wenn das viele nicht (glauben) wollten und teilweise deswegen der Termin noch mal nach hinten verschoben wurde.


    Ich weiss jetzt nicht so ganz was Du genau damit meinst, dass Deine 2.7er Python-Programme noch laufen. Falls die noch mit Python 2.7 laufen, dann solltest Du etwas tun solange Python 2.7 noch in den Linux-Distributionen enthalten ist, die Du verwendest. Und zwar die Programme nach Python ≥3.6 portieren. Falls sie mit Python ≥3.6 laufen, dann brauchst Du erst einmal nichts weiter zu machen.


    Es macht IMHO schon Sinn bei den neuen Python-Versionen zu schauen was die an Änderungen bieten und auch vorhandene Quelltexte zu überarbeiten. Manchmal sind Sachen „deprecated“ die man ersetzen sollte bevor die Funktionalität dann tatsächlich verschwunden ist und man das dann irgendwann unter Zeitdruck machen muss. Manchmal kommt neue und/oder verbesserte Funktionalität hinzu, die Sachen einfacher oder verständlicher machen kann.


    Zum Skript-Begriff: Der ist wie DeaD_EyE schon schrieb nicht klar definiert. Skripten bedeutet im Grunde, dass man kein eigenständiges Programm schreibt, sondern ein kleines ”Rezept”, welches ein anderes System, in das die ”Skriptsprache” eingebettet ist, steuert oder um eine Funktionalität erweitert. Python ist zum Beispiel als Sprache in anderer Software integriert — Blender, Gimp, oder Inkscape beispielsweise — und da wird es als Skriptsprache verwendet. Auf der anderen Seite sind komplette GUI-Anwendungen, Webrahmenwerke, Dienste, … in Python programmiert, die eindeutig keine Skripte sind. Und dann gibt es einen Graubereich, wo man auf beides, Skript oder Programm, plädieren kann.


    Larry Wall, der Erfinder der Programmiersprache Perl, hat mal sinngemäss gesagt „Ein Programm ist was man dem Publikum gibt, ein Skript was man den Schauspielern gibt“. Also Programme sind eher/auch was für Endnutzer, Skripte für Programmierer/Admins, also Leute die da auch reinschauen können/müssen wenn was nicht läuft, oder auch zwingend um es an die eigenen Gegebenheiten anzupassen.

    “If debugging is the process of removing software bugs, then programming must be the process of putting them in.” — Edsger Dijkstra

  • Dennis89 Naja noch nicht so ganz, das ist noch nicht die endgültige Version sondern ”nur” der 2. „release candidate“.

    “If debugging is the process of removing software bugs, then programming must be the process of putting them in.” — Edsger Dijkstra

  • Dennis89 Naja noch nicht so ganz, das ist noch nicht die endgültige Version sondern ”nur” der 2. „release candidate“.

    Doch, die release notes sind nur noch nicht aktuell - stable war für heute geplant (siehe PEP 596), und das wurde eingehalten.