WikiDer > Python (Programmiersprache)

Python (programmeertaal)
Python
Python
ParadigmaImperativ, objektorientierten
erschien1991
Entworfen vonGuido van Rossum
Entwickelt vonPython Software Foundation
Aktuelle Version3.9.3 (2. April 2021)
3.8.9 (2. April 2021)
3.7.10 (15. Februar 2020)
2.7.18 (20.04.2020)
TypensystemDynamisch, stark
ImplementierungenCPython, Jython und andere
DialekteStapelloses Python
Beeinflusst vonABC, Algol-68, C, Haskell, Symbol, lispeln, Modula-3, perl, Java
Einfluss aufboo, Groovig, Rubin, Kobra
BetriebssystemMultiplattform
LizenzPython Software Foundation-Lizenz
Webseite(und) Offizielle Website
Portal  Portalsymbol  Informatik
Ein Stück Quellcode in Python mit Syntaxfärbung.

Python ist ein Programmiersprache dieser Anfang die 90er entworfen und entwickelt von Guido van Rossum, zu der Zeit verbunden mit der Zentrum für Mathematik und Informatik (dafür Mathematisches Zentrum) im Amsterdam. Die Sprache basiert teilweise auf Erkenntnissen des Professors Lambert Meertens, das ist eine Sprache namens ABC entworfen hatte, gedacht als Alternative zu BASIC, aber mit erweiterten Datenstrukturen. Die Sprache wird nun von einer begeisterten Gruppe unter der Leitung von Van Rossum bis Juli 2018 weiterentwickelt. Diese Gruppe wird von Freiwilligen im Internet unterstützt. Die Python-Entwicklung wird geleitet von der Python Software Foundation. Python ist gratis Software.

Python verdankt seinen Namen Guido van Rossums Lieblingsfernsehprogramm, Monty Pythons Flying Circus.[1][2]

Eigenschaften

LEERLAUF, einer der verfügbaren IDEs für Python.

Syntax

Python wurde mit Blick auf lesbaren Code entwickelt. Daraus folgt ihr „purer“ Stil. Mit wenigen Worten kann man viel sagen. Dies äußert sich auf verschiedene Weise. Struktur wird durch Einrückung (Linieneinrückung) anstelle von beispielsweise geschweiften Klammern aufgetragen C-wie Sprachen. Anweisungen (ähnlich wie Klartextsätze) werden einfach am Zeilenende abgeschlossen. Variablen erhalten keine Typdeklaration. Python verwendet Ente tippen. Eine detaillierte Darstellung der Syntax finden Sie weiter unten.

Vertiefung

Python ist eine der wenigen Sprachen, die Zeileneinrückungen verwenden, auch bekannt als Vertiefung als Hinweis auf die Schichtung der verschiedenen Teile des Programms bezeichnet. Das ist etwas Jaap van Ganswijk, der Designer von JPL und UHL seit den frühen 1980er Jahren befürwortet wird, aber auch andere haben dies vorgeschlagen.

Andere Sprachen unterscheiden sich darin durch die Verwendung von Klammern, die dann aus den Wörtern BEGIN und END (at Pascal, algol und PL/1) oder Klammern (für C, C und Java), um eine Blockstruktur anzuzeigen. In der Praxis wird ein Programmierer auch die Zeilen mit diesen Sprachen einrücken, um das Programm lesbarer zu machen.

In Python wird die Blockstruktur allein durch Einrückung bestimmt. Diese Einrückung und eine Reihe weiterer Elemente ermöglichen den Vergleich der Struktur der Sprache mit der Struktur der Pseudoprogrammiersprache die in der Literatur in vielen Fällen verwendet wird, um Algorithmen erklären.

Ente tippen

Python 3. Die Standardtyphierarchie.png

Python implementiert das sogenannte Ente tippen. Dies bedeutet, dass es Art von a Variable und die Art von a Streit von zum Beispiel a Funktion muss nicht definiert werden. (Also) findet keine Typüberprüfung während der Kompilierung statt. Zur Laufzeit wird nur geprüft, ob die Methoden für dieses Objekt verwendet werden, definiert sind. Falls nicht, folgt eine Fehlermeldung.

EAFP

Eine gängige Art der Programmierung in Python ist die sogenannte EAFP(einfacher um Vergebung zu bitten als um Erlaubnis, aus einer Aussage von Grace Hopper). Dies startet eine Funktion oder Methode, ohne zuerst zu überprüfen, ob sie richtig funktioniert, und gibt dann eine Fehlermeldung aus und fängt sie ab, wenn dies nicht der Fall ist. In den meisten anderen Programmiersprachen ist dies entweder unmöglich oder wird als schlechter Programmierstil angesehen. Sie verwenden was in Python LBYLProgrammierstil (Schauen Sie, bevor Sie springen): Schauen Sie sich zuerst die Argumente einer Funktion an, um zu sehen, ob die Funktion gut funktioniert, und fahren Sie erst fort, wenn dies der Fall ist.

Performance

Ein Python-Programm wird in eine oder mehrere Textdateien mit der Erweiterung .py geschrieben. Um ein Python-Programm auszuführen, muss man im Fall von CPython den Python-Interpreter aufrufen, gefolgt vom Namen der Datei, in der der Anfang des Programms kodiert ist.

Dolmetscher

Der CPython-Interpreter konvertiert den Python-Programmcode nicht sofort in immediately Maschinenanleitung, aber kompiliert zu einer Zwischenform, Byte-Code erwähnt. Dieser Code wird in Form einer .pyc-Datei gespeichert (mit dem c von zusammengestellt, zusammengestellt). Der Bytecode ist unabhängig vom Betriebssystem - er kann auf ein anderes Betriebssystem verschoben werden. Der nächste Schritt besteht darin, den Bytecode von der virtuellen Python-Maschine auszuführen. Es wandelt den Bytecode in Maschinensprache um (Anweisungen für den Prozessor). Der erste Schritt ist nur notwendig, wenn der Interpreter keine aktuelle .pyc-Zusammenstellung findet. Der Zwischenschritt tritt auf, weil Bytecode optimiert ist, um schneller in Maschinenbefehle umgewandelt zu werden. Darüber hinaus kümmert sich die virtuelle Maschine um die Müllabfuhr.

Da Python ein sogenanntes Dolmetscher heißt, in Python geschriebene Programme sind langsamer als Programme, die in einer Sprache mit a . geschrieben wurden Compiler, wie C. Python-Programme sind aufgrund der Garbage Collection ebenfalls langsamer.

Müllabfuhr

Wie in vielen anderen modernen Skriptsprachen in Python wird Speicherplatz automatisch für neue oder wachsende Variablen reserviert und wieder freigegeben, wenn diese Variablen nicht mehr referenziert werden (Müllabfuhr). Das erspart dem Programmierer viel Arbeit, die er in manchen Sprachen (wie C und C) erledigen muss.

Eigenständige ausführbare Dateien

Es ist auch möglich, Python zu verwenden, ohne den Python-Interpreter und die Bibliotheken zu installieren. Ein Beispiel für ein Werkzeug dafür ist py2exe.

Bibliotheken

Python wird standardmäßig mit einer umfangreichen Bibliothek zum Bearbeiten von allem und jedem geliefert. Es ist sehr einfach, wiederverwendbaren Code in Python zu schreiben. Weil viele der Bibliotheken, die die Leute schreiben, kostenlos und kostenlos anderen zur Verfügung gestellt werden, wachsen die Möglichkeiten der Bibliothek ständig. Python wird damit zu einer Programmiersprache, die zur schnellen Entwicklung einer neuen Anwendung verwendet werden kann, ohne dass der dabei erzeugte Code unlesbar wird.

Syntax

Export

Anzeige der Ausgabe auf dem 'Standardausgabe' (normalerweise der Bildschirm) wird in Python 3 mit dem drucken-Funktion:

drucken("Hallo Welt")>>HalloWeltdrucken(3*2)>>6drucken("3*2")>>3*2

Python geht nach dem druckenFunktion sofort eine Zeile. Um etwas auf der gleichen Zeile zu drucken, gibt es die Endeargumentieren mit a Schnur als Eingabe:

drucken("Hallo")drucken("Welt")>>Hallo>>Weltdrucken("Hallo",Ende=" ")drucken("Welt")>>HalloWelt

Es spielt in Python keine Rolle, ob der zu druckende String in einfache oder doppelte Anführungszeichen eingeschlossen ist, solange dies konsistent geschieht.

drucken("Morgens sage ich",':',' "Hallo!"')>>Morgens sage ich "Hallo!"

Kommentar

Um ein Skript einzufügen Textkommentar Ort, der nicht aufgeführt werden darf, kann es sein #Zeichen verwendet werden. Bei mehrzeiligen Kommentaren wird ein Block mit drei doppelten Anführungszeichen verwendet.

# print("Diese Zeile wird nicht ausgeführt")"""print("Und diese Zeilen?")print("Weder!")"""drucken("Diese Regel gilt")>>DiesesRegelGut

Variablen und Feedback

Variablen sind Behälter, denen ein Wert zugewiesen ist oder wurde. Variablen können manipuliert, verwendet oder angezeigt werden. In Python muss die Variable nicht vorher deklariert werden. Um die Eingaben eines Benutzers abfragen zu können, EingangFunktion verwendet. Der Eingang wird dann einer Variablen zugewiesen.

# Wie Variablen funktionierenSumme=4*3drucken(Summe)>>12# Variablenmanipulationfünf=4drei=3drucken(fünfdrei)>>7Korrektur=5fünf=Korrekturdrucken(fünfdrei)>>8# Ein weiteres Beispiel für ManipulationBreite=20Höhe=10Oberfläche=Breite*Höhedrucken(Oberfläche)>>200Höhe=Höhe*2# Höhe *= 2 ist auch erlaubtOberfläche=Breite*Höhedrucken(Oberfläche)>>400# Benutzereingabe anfordernName=Eingang("Wie heißen Sie?")drucken("Hallo "Name"!")>>WasistIhreName?<<Monty>>HalloMonty!

Ausdrücke

Ausdrücke werden mit den Standard-Vergleichsoperatoren ermittelt und ergeben die Werte wahr oder Falsch. Ein Ausrufezeichen wird verwendet, um eine falsche Übereinstimmung zu testen.

hoch=5niedrig=2drucken(niedrig<hoch)>>wahrdrucken(niedrig==3)>>Falschdrucken(niedrig!=3)>>wahr

boolesche Operatoren

In einem Ausdruck ist der boolesche Operatorenoder und und werden verwendet.

hoch=9niedrig=3drucken(hoch<niedrigoderniedrig==3)# Testen Sie, ob einer der Ausdrücke wahr ist>>wahrdrucken(hoch<niedrigundniedrig==3)# Testen Sie, ob beide Ausdrücke wahr sind>>Falsch

Entscheidungen

Entscheidungen werden mit a . getroffen wennAnweisung mit einem Ausdruck. Diese können ergänzt werden mit a sonst-Aussage und elifAussagen.

# Bibliothek zum Anzeigen von Zufallszahlen importierenimportierenzufälligSieg=zufällig.randint(1,3)drucken("Willkommen bei Lass uns einen Deal machen. Wähle eine Tür.")drucken("[1] Tür eins")drucken("[2] Tür zwei")drucken("[3] Tür drei")Tür=int(Eingang("Geben Sie eine Auswahl an:"))# Wenn-sonst-BlockwennTür==Sieg:drucken("Hinter der Tür steht ein Koffer mit einer Million Euro. Du gewinnst!")sonst:drucken("Hinter der Tür ist ein Packesel, mit dem du nach Hause zurückkehren kannst. Du verlierst!")# Angenommen, die Variable "win" entspricht der angegebenen Eingabe...>>GebeneinWahlauf:<<3>>RückseitedasTürsitzeneinKoffermiteinMillionEuro.SieGewinnt!

Datenstrukturen

Das Üblichste Datenstruktur in Python ist die 'Liste'. Dieser besteht aus einem Index verschiedener Arten von Einheiten. Die erste Indexnummer ist immer eine Null.

Farben=["rot","Gelb"]drucken(Farben[1])>>Gelbdrucken(Farben)>>['rot','Gelb']Farben.anhängen("Blau")drucken(Farben)>>['rot','Gelb','Blau']

Probe

Python hat zwei Schleifenkonstruktionen eine Anweisung wiederholt ausführen, nämlich die während-Schleife und die zum-Schleife.

zum-Aussage

Das zumSchleife wird erstellt, um Datenstrukturen herunterzufahren. Er ist anders als die meisten anderen zumSchleifen aus Programmiersprachen und ist am besten zu vergleichen mit den für jedes-Schleife aus PHP).

# Beispiel mit for-SchleifenFarben=["rot","Gelb","Blau","schwarz","Orange","Violett","Grün"]Menge=0# Diese Variable wird in der for-Schleife manipuliert, daher muss sie hier vorab deklariert werdenzumNummerimFarben:Menge =1drucken("In meiner Buntstiftschachtel"Stroh(Menge)"Bleistifte.")# Ganzzahlen können nicht mit Strings verkettet werden, daher die str-Funktion# Siehe auch http://nl.wikipedia.org/wiki/Concatenatie>>ImmeineBoxmitBuntstiftesitzen7Bleistifte.# Ein weiteres Beispiel mit for-SchleifenFarben=["rot","Gelb","Blau","schwarz","Orange","Violett","Grün"]drucken("Meine Schachtel Buntstifte enthält eine",Ende=" ")zumFarbeimFarben:wennFarbe==Farben[-1]:# Vergleich mit letztem Element aus der Listedrucken(Farbe"Bleistift.")elifFarbe==Farben[-2]:# Vergleich mit vorletztem Element aus Listedrucken(Farbe,Ende=" und ")sonst:drucken(Farbe,Ende=", ")>>MeineBoxmitBuntstifteenthälteinrot,Gelb,Blau,schwarz,Orange,ViolettundGrünBleistift.

während-Aussage

Das während-loop wiederholt eine Anweisung mit einem Ausdruck:

Nummer=1drucken("Ich kann bis fünf zählen!")währendNummer<=5:drucken(Nummer)Nummer =1>>ichkönnenbis umfünfAnzahl!>>1>>2>>3>>4>>5

Biene zum- und währendAussagen können de ReichweiteFunktion verwendet werden.

drucken("Ich kann bis fünf zählen!")zumNummerimReichweite(1,6):# Letzte Zahl wird nicht gezähltdrucken(Nummer)# Ausgabe wie im vorherigen Beispiel

Abstraktion

Funktionen

Funktionen mit dem gemacht werden defAussage, mit oder ohne Argumente.

defQuadrat(Nummer):RückkehrNummer*Nummerdrucken(Quadrat(6))>>36

Fehlerbehandlung

Python hat erweiterte Verfahren für Ausnahmebehandlung, die in der sogenannten EAFP(Einfacher um Vergebung zu bitten als um Erlaubnis) Programmierstil. Der folgende Code gilt als akzeptabler Python-Code:

Versuchen:X=1/jaaußerZeroDivisionError:X=0

Bereitstellungen und Versionen

Die Standardimplementierung von Python ist in C geschrieben. Daher wird sie manchmal auch als CPython bezeichnet.

CPython

Die erste Implementierung von Python wurde geschrieben in C. Dies ist die am häufigsten verwendete Version. Es ist auf der offiziellen Python-Website verfügbar und auf den meisten Distributionen und Versionen von Linux und Mac OS vorinstalliert.

Es gibt zwei häufig verwendete Versionen dieser Distribution: 2 und 3. Da Version 3 einige Änderungen enthält, die nicht mit Version 2 kompatibel sind, ist Version 3 nicht einfach ein Ersatz für Version 2. Um ein Python-Programm auszuführen, ist es wichtig zu wissen welche Python-Version es verwendet.

Jython

Das J steht hier für die Programmiersprache Java. Diese Python-Version wird mit dem Java-Laufzeitumgebung. Dies ist eine Programmierplattform, auf der verschiedene Sprachen (nicht nur Java) systemunabhängig ausgeführt werden können.

EisenPython

sehen EisenPython für den Hauptartikel zu diesem Thema.

Ebenfalls .GERADE hat eine eigene Python-Version. .NET ist das Gegenstück zur Java Runtime Environment von Microsoft, und bietet Programmierern eine Plattform zum Schreiben von Windows-Anwendungen.

PyPy

sehen PyPy für den Hauptartikel zu diesem Thema.

Diese Python-Implementierung ist in RPython (einer eingeschränkten Python-Variante) geschrieben und konzentriert sich auf Geschwindigkeit. Der Name bezieht sich auf seine Implementierungssprache: de Erweiterung einer Python-Datei ist: .py.

Python-Anwendungsfälle

Python ist eine Programmiersprache mit einer großen Auswahl an Bibliotheken und kann in fast jeder Programmierdomäne verwendet werden. Für einige spezifische Anwendungsfälle Python ist jedoch besonders geeignet.

Betriebssystem-Skripting

Python ist ein Skriptsprache zum Ausführen von Aufgaben auf einem Betriebssystem verwendet. Vorteile von Python für diesen Anwendungsfall sind seine skriptähnliche Syntax, die Werkzeuge, die die Python-Sprache und Standardbibliothek für solche Aufgaben bereitstellt, und dass Python mehr oder weniger systemunabhängig arbeitet. Letzteres bedeutet, dass der gleiche Python-Code auf verschiedenen Betriebssystemen verwendet werden kann.

Mathematik und Naturwissenschaften

Python ist auch als Programmiersprache für mathematisch-naturwissenschaftliche Programme bekannt. NumPy und SciPy sind leistungsstarke Bibliotheken für mathematische und wissenschaftliche Berechnungen.

Netz

Python kann auch verwendet werden, um Web Applikationen entwickeln. Dafür gibt es verschiedene WebanwendungenRahmen, wie Django und Flascheund Servertechnologien, wie z mod_python. Es wurde auch ein Standard definiert, genannt Webserver-Gateway-Schnittstelle (WSGI) für die Kommunikation zwischen Webservern und Webanwendungsframeworks. Auf diese Weise können Sie tragbar Webanwendungen und Frameworks sind in Python geschrieben.

Siehe auch

Externe Links

Wikibooks hat mehr zu diesem Thema: Programmierkurs in Python.