Tauchen Sie tief in Python gegen Perl Debatte ein - was soll ich Python oder Perl lernen?
- 2721
- 53
- Aileen Dylus
Wenn eine neue Programmiersprache eingeführt wird. Eine Art Buzz verbreitet sich oft in der IT -Branche und der neue wird häufig in jedem Aspekt verglichen, darunter Merkmale, Syntax- oder Kern -CPU- und Speicheraspekte, einschließlich GC -Zeit und aller, mit dem vorhandenen seiner Art.
Viele Beispiele für solche Fälle können aus der Vergangenheit aufgegriffen und untersucht werden, einschließlich der Debatte zwischen Java Und C#, C++, usw. Ein solcher Fall, der eine beträchtliche Aufmerksamkeit auf sich zog.e. Python Und Perl.
Wohingegen Python wurde anfangs als Nachfolger der ABC -Sprache nur als “erfunden“HobbyProgrammierungsprojekt (das UNIX/C -Hacker anziehen würde) für den Autor, der es nach der Serie seines größten Stars benannte Monty Python.
Vorgeschlagene Lesen: Erste Schritte mit Python -Programmierung und Skript unter Linux
Perl war fast 2 Jahre zuvor als Unix -Skriptsprache, die die Verarbeitung der Berichtsberichte erleichterte. Es war eine Mischung aus einer Kombination vieler Sprachen, einschließlich C, awk, sed und Shell -Skript.
Es ist erwähnenswert, dass diese Sprachen, die unterschiedliche Absichten entwickelt haben, ständig verglichen werden, was mich dazu gebracht hat, die Gründe zu studieren und herauszufinden, aus denen einige wichtige wie unten aufgeführt sind:
- Sowohl gezielte Unix -Betriebssysteme, eines für Hacker und andere, um Berichte zu verarbeiten.
- Beide sind objektorientiert (Python ist der mehr) und interpretiert, wobei einer stark tippt und klar ist, wenn es darum geht, i zu codieren, i.e. Python und andere, die hässliche Tippen mit Zahnspangen für die Darstellung eines Blocks I ermöglichen.e. Perl
- Beide sind im Prinzip entgegengesetzt, wenn wir sagen, Perl hat viele Möglichkeiten, eine einzige Aufgabe zu erledigen, während sich Python auf eine und einzige Möglichkeit konzentriert, Dinge zu tun.
Python gegen Perl - Funktionen verglichen
Tauchen wir tief in diese Debatte ein und versuchen, die allgemeinen Aspekte herauszufinden, in denen sich diese beiden Sprachen voneinander unterscheiden. Versuchen wir auch, die Quelle der Wahrheit für viele Klischees herauszufinden, die in der Branche zu hören sind und sagen: “Python ist Perl mit Trainingsrädern" oder "Python ähnelt Perl, aber anders"Damit wir versuchen können, mit einer genauen Lösung für diese unendliche Debatte zu schließen.
1. Pythons Clean vs Perls komplexer Syntax
Python hat einen großen Vorteil gegenüber Perl, wenn es um die Lesbarkeit der Code geht. Pythons Code ist viel klarer zu verstehen als der von Perl, selbst wenn sie nach Jahren Code lesen.
Mit Eindrückung, die den Codeblock und die ordnungsgemäße Strukturierung darstellt, ist Pythons Code viel sauberer. Auf der anderen Seite leiht Perl seine Syntax aus verschiedenen Programmiersprachen wie C, Shell Scripting und sogar awk- und SED -Filter, wenn es um reguläre Ausdrücke geht.
Vorgeschlagene Lesen: 15 nützliche 'SED' -Befehle für tägliche Linux -Systemverabreichungsaufgaben
Abgesehen davon mit '' Und ''
einen Codeblock und unnötige Zugabe von darstellen ';' '
Am Ende jeder Zeile könnte Code in Perl zu einem Problem werden, um zu verstehen.
2. Perls integriertes gegen Python's 3. Party Regex und Betriebssystembetriebsunterstützung
Perl Sprache leiht sich seine Syntax aus C und andere Unix Befehle wie sed, awk, usw. Aufgrund dessen, was es über eine viel leistungsstarke und eingebaute Regex-Unterstützung verfügt, ohne Module von Drittanbietern zu importieren.
Auch, Perl kann OS-Operationen mit integrierten Funktionen verarbeiten. Andererseits, Python Hat Drittanbieter Bibliotheken für beide Operationen i.e. Betreff für Regex und Betriebssystem, SYS für Betriebssystemoperationen, die vor solchen Operationen sichergestellt werden müssen.
Die Regex -Operationen von Perl haben 'sed„Wie Syntax, die es nicht nur für Suchvorgänge, sondern auch ersetzen, ersetzen, ersetzen, und andere Vorgänge in einer Saite können einfach und schnell ausgeführt werden als Python, wo eine Person wissen und sich an die Funktionen erinnern muss, die den Bedürfnissen gerecht werden.
Beispiel: Betrachten Sie ein Programm, um nach einer Ziffer in der Zeichenfolge zu suchen in Perl Und Python.
PythonImportieren re = 'hello0909There' Ergebnis = re.findall ('\ d+', str) DruckergebnisPerl
$ string = 'hello0909There'; $ string = ~ m/(\ d+)/; Druck "$ & \ n"
Sie sehen die Syntax für Perl ist viel einfach und inspiriert von SED -Befehl, das die Vorteile nutzt Python Syntax, die ein Modul Dritter importiert 'Betreff'.
3. Pythons fortgeschrittene OO-Programmierung gegen Perls Einzeiler
Eine Funktion wo Python überschatten Perl ist seine fortgeschritten Oo
Programmierung. Python hat eine umfangreiche objektorientierte Programmierunterstützung mit sauberer und konsistenter Syntax während des Objekts Oop
In Perl veraltet sein, wo das Paket als Ersatz für Klassen verwendet wird.
Vorgeschlagene Lesen: Erste Schritte mit Python Django Web Framework
Auch schreiben Oo
Der Code in Perl wird dem Code viel mehr Komplexität verleihen, was dem Code schließlich schwer zu verstehen macht, selbst Unterprogramme in Perl sind sehr schwer zu programmieren und letztendlich schwer zu verstehen.
Auf der anderen Seite eignet sich Perl am besten für seine Einzeiler, die in der Befehlszeile für die Ausführung der verschiedenen Aufgaben verwendet werden können. Außerdem kann Perl Code schließlich verschiedene Aufgaben in weniger Codezeilen als Python ausführen.
Ein Shortcode -Beispiel für beide Sprachen, das die Fähigkeit der Perl hervorhebt, in weniger LOC mehr zu tun:
PythonVersuchen Sie: mit offen („Daten.CSV ”) als F: für Zeile in F: Drucklinie, außer Ausnahme als E: Druck" Datei nicht öffnen - %s " %ePerl
Öffnen (Datei ”,%lt; INP.txt ”) oder sterben" Datei nicht öffnen "; while () print "$ _";
Vor- und Nachteile - Python gegen Perl
In diesem Abschnitt werden wir die Vor- und Nachteile von Python und Perl diskutieren.
Python -Profis:
- Es verfügt über eine saubere und elegante Syntax, die diese Sprache als erste Programmiersprache für Anfänger zu einer großartigen Wahl macht.
- Hat sehr fortgeschritten und inhärent
Oo
Programmierung, auch Thread -Programmierung in Python ist viel besser als Perl. - Es gibt viele Anwendungsbereiche, in denen Python bevorzugt wird und sogar Perl übertrifft. Wie: Perl wird für CGI -Skripten bevorzugt, aber heutzutage Pythons Django und web2py Wie Web -Skriptsprachen werden immer beliebter und haben eine große Attraktion der Branche.
- Hat verschiedene SCHLUCK Wrapper für verschiedene Programmiersprachen wie Cpython, Ironpython Und Jython und die Entwicklung dieser ist der Entwicklung von Swig -Wrappern für Perl vorausgegangen.
- Der Python -Code ist immer gut eingerückt und leicht zu lesen und zu verstehen, selbst wenn Sie den Code eines anderen oder sogar Ihren Code nach Jahren lesen.
- Python ist gut für verschiedene Anwendungen wie Große Daten, Infra Automatisierung, Maschinelles Lernen, NLP, usw. hat eine enorme Unterstützung der aktiven Gemeinschaften, weil es Open Source ist.
Python -Nachteile:
- Es gibt nur wenige Bereiche, in denen die Ausführung in Python normalerweise langsamer ist als die von Perl, einschließlich Regex und String-basierte Operationen.
- Manchmal ist es schwierig, die Art von Variable in Python zu erhalten.
Perl Pros:
- Perl hat leistungsstarke Einzeiler und sorgt sogar für UNIX-Rohrleitungen wie Syntax, die in der Befehlszeile verwendet werden kann, um verschiedene Aufgaben auszuführen. Außerdem wird sie von UNIX beeinflusst, und deren Befehlszeilenprogrammierung integriert so viele Unix-beeinflusste Befehle in seine Codierung.
- Perl ist bekannt für seine mächtigen Regex und String -Vergleichsoperationen, wie sie von beeinflusst wird sed Und awk wie leistungsstarke Unix -Tools. Im Falle von Regex- und String -Operationen wie Auswechslung, Matching, Ersatz, Perl übertrifft Python. Auch viele Datei -E/A -Operationen, Ausnahmebehandlung erfolgt schneller auf Perl.
- In Bezug.
- Viele Anwendungsbereiche, in denen Perl seine Verwendung findet Netzwerkprogrammierung, Systemadministration, CGI Scripting (Hier überwindet Python Perl mit Django und Web2py) usw.
- Es ist leicht, die Art der Variablen mit den vor ihnen verwendeten Symbolen zu identifizieren, z. B.:
'@' '
identifiziert Arrays und"%"
identifiziert Hashes.
Perl Nachteile:
- Perl hat einen sehr komplexen Code, der es schwierig macht, für einen Anfänger zu verstehen. Unterroutinen und sogar andere Symbole wie:
'$ "
,'$ &'
usw. sind schwer zu verstehen und für einen weniger erfahrenen Programmierer zu programmieren. Außerdem wäre Perl Code beim Lesen schwierig und komplex zu verstehen, es sei denn, Sie haben eine Qualitätserfahrung. - Oo Die Programmierung in Perl ist ein bisschen veraltet, da es noch nie bekannt ist Oo Programmierung und viele Operationen wie Threading sind auch auf Perl weniger ausgeprägt.
Abschluss
Wie oben zu sehen, wo beide Sprachen in ihrer Hinsicht gemäß den Anwendungen, auf die sie abzielen, gut sind, Python nimmt etwas Vorteil über Perl Als erste Wahl für einen Anfänger aufgrund seines sauberen und leicht verständlichen Code.
Am Ende liegt alles auf dem spezifischen Bereich, den Sie abzielen. Alle Ihre Kommentare zu diesem Artikel sind willkommen und würden Sie auffordern, Ihre Ansichten zu diesem Thema zu geben, wenn laut Ihnen Python -Siege oder Perl gewinnt.
- « So richten Sie automatische Updates für CentOS 8 ein
- fwbackups - ein featurereiches Backup -Programm für Linux »