Warum Python3?

Im Institut verwenden wir sowohl Python 2 als auch Python 3. Bei Recherche zu den aktuellen Unterschieden (Python 3.5 im Vergleich mit Python 2.7) habe ich zwei schöne Artikel von Brett Cannon gefunden, dem aktuellen Verwalter von Python, und sie für meine Arbeitsgruppe zusammengefasst.

Die Artikel:

  1. Warum Python 3: Why Python 3 exists
  2. Warum 3 nutzen: How to pitch Python 3 to Management

Die für uns relevanten1 Punkte sind:

  1. Warum Python 3 nötig war:

    • Python2: string = byte-array.
      • Py3 vermeidet Encoding-Bugs bei Unicode: Alle Strings sind Unicode.
    • Python2: Quellen in ASCII. β im Kommentar brauchte # encoding: utf-8
      • Py3 nutzt utf-8 in Quelldateien als Standard.
    • Letzte Chance: Jedes Jahr wurden die Kosten für die Änderung größer.
  2. Warum 3 in nutzen (für uns relevantes, z.B. für neue Projekte):

    • int/long -> int
    • Unicode im Code: σ = sqrt(var) # nur Buchstaben, aber z.B. nicht Σ
    • H.dot(β) -> H @ β
    • chained exceptions: Traceback ... during handling ... Traceback — erleichtert Debugging
    • print() erleichtert strukturierte Ausgabe2

Die Auswirkung dieser Aspekte ist nicht zu unterschätzen: Leichteres Debuggen und Vermeidung von Überraschungen und sperrigen Workarounds.


  1. Ich habe sie zusammengefasst, da ich nicht erwarten kann, dass Wissenschaftler (oder andere Leute, die Python nur verwenden) die ganzen Artikel lesen, nur um zu überlegen, was sie machen, wenn sie mal wieder ein neues Projekt angehen wollen. 

  2. Beispiel für print():
    nums = [1, 2, 3]
    with open("data.csv", "a") as f:
        print(*nums, sep=";", file=f) 

Use Node:

⚙ Babcom is trying to load the comments ⚙

This textbox will disappear when the comments have been loaded.

If the box below shows an error-page, you need to install Freenet with the Sone-Plugin or set the node-path to your freenet node and click the Reload Comments button (or return).

If you see something like Invalid key: java.net.MalformedURLException: There is no @ in that URI! (Sone/search.html), you need to setup Sone and the Web of Trust

If you had Javascript enabled, you would see comments for this page instead of the Sone page of the sites author.

Note: To make a comment which isn’t a reply visible to others here, include a link to this site somewhere in the text of your comment. It will then show up here. To ensure that I get notified of your comment, also include my Sone-ID.

Link to this site and my Sone ID: sone://6~ZDYdvAgMoUfG6M5Kwi7SQqyS-gTcyFeaNN1Pf3FvY

This spam-resistant comment-field is made with babcom.

Inhalt abgleichen
Willkommen im Weltenwald!
((λ()'Dr.ArneBab))



Beliebte Inhalte

Draketo neu: Beiträge

Ein Würfel System

sn.1w6.org news