Vor ein paar Tagen habe ich von Mojo gelesen. Ich machte nur eine Pause und las: „Mojo ist 35.000 Mal schneller als Python!„ Moment, was?

Ich benutze Python seit einigen Jahren und jetzt kommt plötzlich eine neue Sprache und behauptet, dass sie das Gleiche tut wie Python – nur schneller als diese.
Also beschloss ich, es selbst zu testen.
Lassen Sie uns also Mojo auf die Probe stellen und diese Behauptung überprüfen.
Bevor wir es auf die Probe stellen, wollen wir kurz über Mojo sprechen. Damit jeder eine Vorstellung davon bekommt, wovon ich spreche.
Mojo ist eine neue Programmiersprache, die Python sehr ähnlich sieht und sich auch so anfühlt. Aber die beste Eigenschaft von Mojo ist – Geschwindigkeit.
Python mag für Aufgaben wie maschinelles Lernen und Datenverarbeitung langsam sein, aber Mojo ist so schnell wie C oder C++ – ohne die Kopfschmerzen, diese Sprachen zu schreiben.
Und wissen Sie was?
Mojo kann Python-Bibliotheken wie NumPy und Pandas verwenden. Sie müssen also nicht bei Null anfangen.
Aber die Frage bleibt die gleiche: Wird es Python ersetzen?
Finden wir es heraus.
Test 1: Der Geschwindigkeitstest (Fibonacci-Folge)
Ich begann mit einer einfachen Aufgabe: der Berechnung der Fibonacci-Folge. Es ist eine großartige Möglichkeit, um zu testen, wie schnell eine Sprache wirklich ist.
Dies ist der Python-Code, den ich geschrieben habe, um die Fibonacci-Folge herauszufinden.
def fibonacci(n):
if n <= 1:
return n
else:
return fibonacci(n-1) + fibonacci(n-2)
print(fibonacci(30))
Ich habe das Gleiche mit Mojo gemacht:
fn fibonacci(n: Int) -> Int:
if n <= 1:
return n
else:
return fibonacci(n-1) + fibonacci(n-2)
print(fibonacci(30))
Sie können sehen, dass der Code fast ähnlich aussieht.
Aber die Ergebnisse?
- Python brauchte 0,4 Sekunden, um Fibonacci(30) zu berechnen.
- Mojo brauchte 0,0012 Sekunden.
Mojo ist nicht nur schneller – es ist umwerfend.
Test 2: Kann Mojo Python-Bibliotheken verwenden?
Eine Sache, die ich über Mojo gehört habe, war, dass es mit Python-Bibliotheken funktioniert.
Also habe ich Mojo mit Matplotlib ausprobiert, einer beliebten Bibliothek zum Erstellen von Diagrammen.
Python-Code:
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [i**2 for i in x]
plt.plot(x, y)
plt.title("Simple Plot")
plt.show()
Mojo-Code:
from python_imports import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [i**2 for i in x]
plt.plot(x, y)
plt.title("Simple Plot Verification")
plt.show()
Mojo hat es perfekt gemeistert.
Das Diagramm sah genauso aus wie das, das ich in Python erstellt habe.
Test 3: Maschinelles Lernen mit Mojo
Als Nächstes versuche ich etwas Fortgeschritteneres: Ich erstelle ein maschinelles Lernmodell mit Scikit-learn.
Python-Code:
from sklearn.linear_model import LinearRegression
import numpy as np
X = np.array([[1], [2], [3]])
y = np.array([1, 2, 3])
model = LinearRegression()
model.fit(X, y)
print(model.predict([[4]]))
Der vorhergesagte Wert für x=4 ist 4,0.
Mojo-Code:
from python_imports import sklearn.linear_model.LinearRegression
from python_imports import numpy as np
X = np.array([[1], [2], [3]])
y = np.array([1, 2, 3])
model = LinearRegression()
model.fit(X, y)
print(model.predict([[4]]))
Mojo-Code: Der vorhergesagte Wert für x=4 ist 4.
Auch hier hat Mojo den Test gerade bestanden.
Der Code lief reibungslos und lieferte die gleichen Ergebnisse wie Python.
Das Beste, was ich über Mojo gefunden habe
- Geschwindigkeit: Es ist wahnsinnig schnell. Für umfangreiche Berechnungen oder KI-Aufgaben ist es einfach umwerfend.
- Python-ähnlich: Mojo sieht eher wie Python aus und fühlt sich auch so an, daher ist es für Python-Entwickler super einfach, Mojo zu lernen.
- Bibliotheksunterstützung: Wir können unsere bevorzugten Python-Bibliotheken wie NumPy, Pandas und Scikit-learn verwenden.
Sollten Sie zu Mojo wechseln?
Ich weiß, dass Mojo unglaublich schnell ist. Wenn Sie an maschinellem Lernen oder Datenverarbeitung arbeiten, ist es wertvoll, wenn Sie es ausprobieren.
Aber wenn Sie denken, dass es Python vollständig ersetzen wird, dann liegen Sie falsch. Denn es wird noch nicht passieren.
Ich schlage vor, beide Sprachen auszuprobieren.
Verwenden Sie Python für die tägliche Arbeit, und wenn Sie einen zusätzlichen Geschwindigkeitsschub benötigen, verwenden Sie Mojo.
Weiterer Beitrag für Sie: 50 Python-Abkürzungen, die jeder Python-Anfänger kennen sollte