heise+ | Verbesserungen in NumPy 2: Arbeiten mit Strings und Skalaren

vor 17 Stunden 1
  1. Verbesserungen in NumPy 2: Arbeiten mit Strings und Skalaren
    • Endlich richtig mit Strings arbeiten
  2. Noch mehr Stringsupport
  3. Scalar Promotion Rules
  4. Die Fast-Fourier-Transformation und ihre Neuerungen
  5. Der Array-API-Standard und NumPy: Besser spät als nie
  6. Verbessertes CPU-Tracking und strikte Testfunktionen
  7. Fazit: vielseitiger, effizienter und nutzerfreundlicher
Artikel in iX 11/2024 lesen

Endlich ist es da: Im Juni 2024 ist das lang ersehnte Release der zweiten offiziellen Version von NumPy erschienen, einer der bekanntesten Open-Source-Bibliotheken für mathematische Anwendungen in Python. Diejenigen, die sich schon gefragt haben, ob sie jemals eine zweite Major Version sehen werden, können erleichtert aufatmen.

Die Skepsis war nicht ganz unbegründet: Die erste Hauptversion wurde 2006 veröffentlicht. Danach gab es 26 Minor Releases, die nun von NumPy 2.0, einer neuen NumPy-Ära, abgelöst wurden. Im August erschien schon Version 2.1. Nach knapp 18 Jahren ist die neue Version ausgestattet mit einer Reihe an neuen Features und vielen technischen Verbesserungen, sowohl bei der API als auch bei der ABI (Application Binary Interface). Einige alte Funktionen hat das NumPy-Team auch ausgemustert.

  • Zu den lang erwarteten Neuerungen in NumPy 2 gehört die erleichterte Verarbeitung von Strings variabler Länge mit der Klasse StringDType und einem eigenen Namespace.
  • Neue Scalar Promotion Rules behalten den Datentyp des Eingabetyps bei. Das hat Auswirkungen auf bestehenden Code, da das neue Verhalten nicht rückwärtskompatibel ist.
  • Änderungen im mathematischen Bereich betreffen unter anderem die neue Array-API, die die mathematische Basis mit anderen gängigen Python-Paketen vereinheitlicht. Außerdem lassen sich Fast-Fourier-Transformationen effizienter mit dem Typ float32 und präziser mit np.longdouble implementieren.
  • Technische Backend-Änderungen zur Leistungsverbesserung wurden beim macOS- und Windows-Support umgesetzt. Und kleine Hilfsfunktionen tracken CPU-Ressourcen.

Natürlich folgt auf solche Breaking Changes, insbesondere an der NumPy-API, eine große Reihe an neuen Einsatzmöglichkeiten. Viele Teams werden aufgrund der technischen und konzeptionellen Änderungen bestehenden Code anpassen müssen. Das kann für manche Projekte schwierig und aufwendig werden und führte auch bereits bei einigen CI/CD-Pipelines zu Problemen.

Das war die Leseprobe unseres heise-Plus-Artikels "Verbesserungen in NumPy 2: Arbeiten mit Strings und Skalaren". Mit einem heise-Plus-Abo können sie den ganzen Artikel lesen und anhören.

Gesamten Artikel lesen