Python (Programmiersprache): Unterschied zwischen den Versionen

Aus Stupidedia, der sinnfreien Enzyklopädie!
Wechseln zu: Navigation, Suche
(Neu: „Python ist eine Programmiersprache die schon lange mit C++ konkurriert. Sie wurde in C (Programmiersprache) realisiert. Im Gegensatz zu C++ ist Python nämlich eine verwend…“)
 
 
(2 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Python ist eine Programmiersprache die schon lange mit [[C++]] konkurriert. Sie wurde in [[C (Programmiersprache)]] realisiert. Im Gegensatz zu [[C++]] ist Python nämlich eine verwendbare Sprache, da sie ohne Präprozessor auskommt. Die Entwurfsphilosphie ist es, möglichst unleserlichen Quellcode erstellen zu können. Python wurde von [[Monty Python]] entwickelt und nach der Schlange benannt.
+
'''Python''' ist eine [[Programmiersprache]] die schon lange mit [[C++]] konkurriert. Sie wurde in [[C (Programmiersprache)]] realisiert. Im Gegensatz zu C++ ist Python nämlich eine [[Schweizerdeutsch|verwendbare Sprache]], da sie ohne [[Prozessor|Präprozessor]] auskommt. Die [[Philodoofie|Entwurfsphilosphie]] ist es, möglichst [[Artikel|unleserlichen Quellcode]] erstellen zu können. Python wurde von [[Monty Python]] entwickelt und nach der [[Penis|Schlange]] benannt.
Python enthält so viele eingebaute Funktionen, dass es 3 Jahre dauert ein einzelnes Programm das in Python geschrieben wurde zu starten.
+
Python enthält so viele eingebaute [[Funktion]]en, dass es 3 Jahre dauert ein einzelnes [[Programm]] das in Python geschrieben wurde zu starten.
 
Python ist [[Open Source]] und hat schon Level 13.
 
Python ist [[Open Source]] und hat schon Level 13.
  
 
== Ziele ==
 
== Ziele ==
Python wurde entworfen, um den Funktionsumfang moderner Programmiersprachen mit der Unleserlichkeit von [[Brainfuck]] zu verbinden.
+
Python wurde entworfen, um den Funktionsumfang [[modern]]er Programmiersprachen mit der [[Kauderwelsch|Unleserlichkeit]] von [[Brainfuck]] zu verbinden.
Allerdings ist Python damit nicht ganz erfolgreich, da der Funktionsumfang von Jahr zu Jahr kleiner wird. Daher sollte man keine Module einbinden, da diese schon im nächsten Monat einfach verschwunden sein können.
+
Allerdings ist Python damit nicht ganz erfolgreich, da der Funktionsumfang von [[Jahr]] zu Jahr kleiner wird. Daher sollte man keine Module einbinden, da diese schon im nächsten [[Monat]] einfach [[Geist|verschwunden sein]] können.
Python hat außerdem Typen, im Gegensatz zu [[Brainfuck]], aber keine Typüberprüfung. Damit ist es leichter Fehler zu erzeugen als im Konkurrenzprodukt [[C++]].
+
Python hat außerdem [[Typ]]en, im [[Zweihorn|Gegensatz]] zu Brainfuck, aber keine Typüberprüfung. Damit ist es leichter [[Windows|Fehler]] zu erzeugen als im [[Konkurrenz]]produkt C++.
  
 
== Datentypen ==
 
== Datentypen ==
Python hat einige Datentypen: Integer, Booleans(billigere Integer) und unbenötigte Datentypen(da es sowieso nur um Turingvollständigkeit geht).
+
Python hat einige [[Daten]]typen: Integer, Booleans(billigere Integer) und unbenötigte Datentypen(da es sowieso nur um [[Turing-Maschine|Turingvollständigkeit]] geht).
In Python ist alles ein "Objekt". Das heißt, man steht jedes mal vor der Frage, ob die Funktion die man verwenden will zur Klasse gehört, oder zu einem Modul, oder zum __builtin__-Modul. Meistens spart man sich dann allerdings die Recherche, und schreibt sich die Funktion selbst.
+
In Python ist alles ein "[[Frau|Objekt]]". Das heißt, man steht jedes mal vor der [[Was ist das?|Frage]], ob die Funktion die man verwenden will zur [[Klasse]] gehört, oder zu einem Modul, oder zum __builtin__-Modul. Meistens spart man sich dann allerdings die [[Recherche]], und [[Masturbation|schreibt sich die Funktion selbst]].
  
 
=== Integer ===
 
=== Integer ===
Oder auch "int", da alle Python-nutzenden Programmierer stinkend faul sind, und sich nicht die Mühe machen wollen das Wort Integer auszuschreiben. Außerdem hält sich der Name des Typs nicht an die Python-Richtlinien, denn er ist volkommen kleingeschrieben. Dies ist wohl darauf zurückzuführen, dass jeder die Python-Richtlinien bescheurt findet da man in Funktionen statt CamelCase under_score verwenden soll. Der Integer in Python ist eine positive Zahl von 0 bis einschließlich 2, wodurch eine effiziente Speicherung in Computersystemen mit Bits die 3 Zustände besitzen. Dieses Verhalten lässt sich in normalen binären Maschinen zum Glück emulieren, womit zumindest 1/4 der möglichen Geschwindigkeit erreicht werden kann.
+
Oder auch "int", da alle Python-nutzenden [[Programmierer]] stinkend faul sind, und sich nicht die [[Kuh|Mühe]] machen wollen das [[Wort]] Integer auszuschreiben. Außerdem hält sich der [[Name]] des Typs nicht an die Python-[[Richtlinien]], denn er ist volkommen kleingeschrieben. Dies ist wohl darauf zurückzuführen, dass jeder die Python-Richtlinien bescheurt findet da man in Funktionen statt [[Kamel|CamelCase]] under_score verwenden soll. Der Integer in Python ist eine [[HIV|positive Zahl]] von 0 bis einschließlich 2, wodurch eine effiziente [[Speicher]]ung in [[Computer]]systemen mit [[Bit]]s die 3 Zustände besitzen. Dieses Verhalten lässt sich in normalen binären [[Maschine]]n zum [[Glück]] emulieren, womit zumindest 1/4 der möglichen [[Sonic|Geschwindigkeit]] erreicht werden kann.
  
 
=== Booleans ===
 
=== Booleans ===
Oder auch "bool", besitzt nur einen verwendbaren Zustand: "True"(oder zu deutsch: "wahr")
+
Oder auch "bool", besitzt nur einen verwendbaren [[blau|Zustand]]: "True"(oder zu deutsch: "wahr")
Booleans besitzen allerdings noch einen anderen Zustand, "False". Aber dieser ist unverwendbar, da er dafür sorgt dass Abfragen in Python übersprungen werden können. Man beachte, dass "True" und "False" keine Klassen sind, aber trotzdem großgeschrieben werden. Dies ist wahrscheinlich auf den schlechten Humor von [[Monty Python]] zurückzuführen.
+
Booleans besitzen allerdings noch einen anderen Zustand, "False". Aber dieser ist unverwendbar, da er dafür sorgt dass [[Frage|Abfragen]] in Python übersprungen werden können. Man beachte, dass "True" und "False" keine Klassen sind, aber trotzdem großgeschrieben werden. Dies ist wahrscheinlich auf den schlechten [[Humor]] von Monty Python zurückzuführen.
  
 
Beispiel(in Python2):
 
Beispiel(in Python2):
Zeile 25: Zeile 25:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Dieses Beispiel wird gegen die Erwartung nie "Hello World" ausgeben, was auf den Fehler im "False"-Wert zurückzuführen ist.
+
Dieses [[Beispiel]] wird gegen die Erwartung nie "[[Hallo Welt!|Hello World]]" ausgeben, was auf den [[Error 404|Fehler]] im "False"-Wert zurückzuführen ist.
 +
 
 +
Da das Problem (Stand: Juni 2017) in der Sprache noch nicht behoben ist, wird meist ein Workaround verwendet:
 +
 
 +
<syntaxhighlight lang="python">
 +
False=True
 +
if False:
 +
    print "Hello World"
 +
</syntaxhighlight>
  
 
=== Andere Datentypen ===
 
=== Andere Datentypen ===
{| style="width: 100%; background-color: none; border: 0px solid black;"  
+
{| class="wikitable"
! style="border: 0px solid black; padding: 0px;" | Typ !! style="border: 0px solid black; padding: 0px;" | Bedeutung
 
 
|-
 
|-
| style="border: 0px solid black; padding: 0px;" | Float(float)
+
! Typ !! Bedeutung
| style="border: 0px solid black; padding: 0px;" | Fließkommazahl, veraltet
 
 
|-
 
|-
| style="border: 0px solid black; padding: 0px;" | None(None)
+
| Float(float) || Fließkommazahl, veraltet
| style="border: 0px solid black; padding: 0px;" | ein konstanter Wert der nichts darstellen soll. Damit unbrauchbar.
 
 
|-
 
|-
| style="border: 0px solid black; padding: 0px;" | String(str)
+
| None(None) || ein konstanter Wert der nichts darstellen soll. Damit unbrauchbar. veraltet
| style="border: 0px solid black; padding: 0px;" | eine Zeichenkette, aber echte Programmierer arbeiten NUR mit Integern. veraltet.
 
 
|-
 
|-
| style="border: 0px solid black; padding: 0px;" | List/Tuple(list/tuple)
+
| String(str) || eine [[Kette|Zeichenkette]], aber echte Programmierer [[Zwang|arbeiten NUR]] mit Integern. veraltet.
| style="border: 0px solid black; padding: 0px;" | Ein Tuple ist eine nicht veränderbare Liste, und beide sind unbrauchbar.
 
 
|-
 
|-
| style="border: 0px solid black; padding: 0px;" | Dictionary(dict)
+
| List/Tuple(list/tuple) || Ein [[Tulpe|Tuple]] ist eine nicht veränderbare [[Liste ausgewählter Pornofilme|Liste]], und beide sind unbrauchbar. veraltet
| style="border: 0px solid black; padding: 0px;" | Ein Wörterbuch zum Nachschlagen von englischen Vokabeln. Die Ausgangssprache ist [[Brainfuck]] und nicht einstellbar
 
 
|-
 
|-
| style="border: 0px solid black; padding: 0px;" | Complex(cmplx oder so)
+
| Dictionary(dict) || Ein [[Wörterbuch]] zum Nachschlagen von englischen [[Vokabel]]n. Die Ausgangssprache ist Brainfuck und nicht einstellbar. nicht veraltet
| style="border: 0px solid black; padding: 0px;" | Eine Zahl die so komplex ist dass man sie nicht verstehen kann.
 
 
|-
 
|-
| style="border: 0px solid black; padding: 0px;" | long
+
| Complex(cmplx oder so) || Eine [[Zahl]], die so [[komplex]] ist, dass man sie nicht verstehen kann. nicht nicht veraltet
| style="border: 0px solid black; padding: 0px;" | Ein Integer mit mehr Werten. Warum auch immer. veraltet
 
 
|-
 
|-
| style="border: 0px solid black; padding: 0px;" | alles andere
+
| long || Ein Integer mit mehr [[Wert]]en. Warum auch immer. [[alt|veraltet]]
| style="border: 0px solid black; padding: 0px;" | veraltet
 
 
|-
 
|-
 +
| alles andere || [[Deine Mutter|veraltet]]
 
|}
 
|}
  
 
== Erweiterungen ==
 
== Erweiterungen ==
Es gibt diverse Erweiterungen zum normalen CPython(Abgeleitet von C++ und Python, um die Konkurrenz zu verdeutlichen), wie z.B. CorePy für Programmierer die noch fauler sind. Denn damit lässt sich lesbarerer(nicht unbedingt lesbar!) [[Assembler]]-Code erzeugen.
+
Es gibt diverse [[Modding|Erweiterungen]] zum [[normal]]en CPython(Abgeleitet von C++ und Python, um die Konkurrenz zu verdeutlichen), wie z.B. CorePy für Programmierer die noch fauler sind. Denn damit lässt sich lesbarerer(nicht unbedingt lesbar!) [[Assembler]]-[[Code]] erzeugen.
  
 
== Versionen ==
 
== Versionen ==
Python gibt es in 3 Versionen: Python1, Python2 und Python3
+
Python gibt es in 3 [[Version]]en: Python1, Python2 und Python3
  
 
=== Python1 ===
 
=== Python1 ===
Sehr alt, aber noch am lesbarsten. Wird verwendet um Toaster mit WiFi-Antennen zu programmieren.
+
[[Oma|Sehr alt]], aber noch am lesbarsten. Wird verwendet um [[Toaster]] mit [[WLAN|WiFi]]-[[Antenne]]n zu programmieren.
Zum Ende der Weiterentwicklung von Python1 hatte Python im Spiel [[Open Source]] das Level 4.
+
Zum [[Weltuntergang|Ende]] der [[Pokemon|Weiterentwicklung]] von Python1 hatte Python im [[Spiel]] Open Source das Level 4.
  
 
Beispiel für Hello World:
 
Beispiel für Hello World:
Zeile 74: Zeile 74:
 
=== Python2 ===
 
=== Python2 ===
 
Die noch am meisten verwendete Version. Sie ist vollständig zu Python1 kompatibel.
 
Die noch am meisten verwendete Version. Sie ist vollständig zu Python1 kompatibel.
Sie besitzt aber weniger verwendbare Grundtypen, so wurde beispielsweise der Fehler bei "False" eingebaut, um die Schwierigkeit zu erhöhen.
+
Sie besitzt aber weniger verwendbare Grundtypen, so wurde beispielsweise der [[Bluescreen|Fehler]] bei "False" eingebaut, um die Schwierigkeit zu erhöhen.
Zu Beginn der Entwicklung von Python3 hatte Pythom das Level 9.
+
Zu Beginn der [[Entwicklung]] von Python3 hatte Pythom das Level 9.
  
 
Beispiel für Hello World:
 
Beispiel für Hello World:
Zeile 83: Zeile 83:
  
 
=== Python3 ===
 
=== Python3 ===
Dies ist die derzeitige Python Version. Sie hat einiges verändert, so wurde z.B. die Printanweisung zu einer Funktion. Damit funktioniert kein normales Python2- oder Python1-Programm in Python3.
+
Dies ist die derzeitige Python Version. Sie hat einiges verändert, so wurde z.B. die [[Drucker|Printanweisung]] zu einer Funktion. Damit funktioniert kein normales Python2- oder Python1-Programm in Python3.
Zurzeit hat Python das Level 13.
+
Zurzeit hat Python das [[Level]] 13.
  
 
Beispiel für Hello World:
 
Beispiel für Hello World:
 
<syntaxhighlight lang="python">
 
<syntaxhighlight lang="python">
 
print("Hello World")  # TODO: Integer statt strings verwenden
 
print("Hello World")  # TODO: Integer statt strings verwenden
# Anmerkung: Der Code ist 1 Zeichen länger wenn man die Kommentare nicht beachtet, und 1 Zeile länger wenn man die Kommentare beachtet
+
# Anmerkung: Der Code ist 1 [[Zeichen]] länger wenn man die [[Kommentar]]e nicht beachtet, und 1 Zeile länger wenn man die Kommentare beachtet
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
=== Python4 ===
 
=== Python4 ===
Es ist geplant, in Python4 den Syntax auf "[", "]", "<", ">", "+", "-", ",", ".", "import", "def", "class" und "()" zu beschränken. Damit würde Python noch näher zu seinem Vorbild [[Brainfuck]] kommen, und trotzdem objektorientiert und modularisierbar bleiben.
+
Es ist geplant, in Python4 den [[Syntax]] auf "[", "]", "<", ">", "+", "-", ",", ".", "import", "def", "class" und "()" zu beschränken. Damit würde Python noch näher zu seinem Vorbild Brainfuck kommen, und trotzdem objektorientiert und modularisierbar bleiben.
Python4 wird als die finale Entwicklungsstufe gesehen, da 2 die erste Primzahl ist, und 4 2 mal 2, bzw. 2 hoch 2. Damit ist 4 die erste Primzahl hoch die erste Primzahl.
+
Python4 wird als die [[Endboss|finale Entwicklungsstufe]] gesehen, da 2 die erste [[Primzahl]] ist, und 4 2 mal 2, bzw. 2 hoch 2. Damit ist 4 die erste Primzahl hoch die erste Primzahl.
  
 
Beispiel für Hello World:
 
Beispiel für Hello World:
Zeile 102: Zeile 102:
  
 
== Verwendung ==
 
== Verwendung ==
Nirgendwo außer unter [[Linux]].
+
[[Nirgends]], außer unter [[Linux]].
  
 
== Alternativen ==
 
== Alternativen ==
[[Brainfuck]], die Konkurrenz [[C++]], [[HQ9+]] oder eine [[Turing-Maschine]]
+
* [[Brainfuck]]
 +
* Konkurrenz [[C++]]
 +
* [[Turing-Maschine]]
 +
<br />
 +
{{Programmiersprachen}}
 +
 
 +
[[Kategorie:Computer]]
 +
[[Kategorie:Dinge, die keine Sau versteht]]
 +
[[Kategorie:Software]]
 +
[[Kategorie:Sprachwissenschaften]]

Aktuelle Version vom 3. Juni 2017, 01:11 Uhr

Python ist eine Programmiersprache die schon lange mit C++ konkurriert. Sie wurde in C (Programmiersprache) realisiert. Im Gegensatz zu C++ ist Python nämlich eine verwendbare Sprache, da sie ohne Präprozessor auskommt. Die Entwurfsphilosphie ist es, möglichst unleserlichen Quellcode erstellen zu können. Python wurde von Monty Python entwickelt und nach der Schlange benannt. Python enthält so viele eingebaute Funktionen, dass es 3 Jahre dauert ein einzelnes Programm das in Python geschrieben wurde zu starten. Python ist Open Source und hat schon Level 13.

Ziele

Python wurde entworfen, um den Funktionsumfang moderner Programmiersprachen mit der Unleserlichkeit von Brainfuck zu verbinden. Allerdings ist Python damit nicht ganz erfolgreich, da der Funktionsumfang von Jahr zu Jahr kleiner wird. Daher sollte man keine Module einbinden, da diese schon im nächsten Monat einfach verschwunden sein können. Python hat außerdem Typen, im Gegensatz zu Brainfuck, aber keine Typüberprüfung. Damit ist es leichter Fehler zu erzeugen als im Konkurrenzprodukt C++.

Datentypen

Python hat einige Datentypen: Integer, Booleans(billigere Integer) und unbenötigte Datentypen(da es sowieso nur um Turingvollständigkeit geht). In Python ist alles ein "Objekt". Das heißt, man steht jedes mal vor der Frage, ob die Funktion die man verwenden will zur Klasse gehört, oder zu einem Modul, oder zum __builtin__-Modul. Meistens spart man sich dann allerdings die Recherche, und schreibt sich die Funktion selbst.

Integer

Oder auch "int", da alle Python-nutzenden Programmierer stinkend faul sind, und sich nicht die Mühe machen wollen das Wort Integer auszuschreiben. Außerdem hält sich der Name des Typs nicht an die Python-Richtlinien, denn er ist volkommen kleingeschrieben. Dies ist wohl darauf zurückzuführen, dass jeder die Python-Richtlinien bescheurt findet da man in Funktionen statt CamelCase under_score verwenden soll. Der Integer in Python ist eine positive Zahl von 0 bis einschließlich 2, wodurch eine effiziente Speicherung in Computersystemen mit Bits die 3 Zustände besitzen. Dieses Verhalten lässt sich in normalen binären Maschinen zum Glück emulieren, womit zumindest 1/4 der möglichen Geschwindigkeit erreicht werden kann.

Booleans

Oder auch "bool", besitzt nur einen verwendbaren Zustand: "True"(oder zu deutsch: "wahr") Booleans besitzen allerdings noch einen anderen Zustand, "False". Aber dieser ist unverwendbar, da er dafür sorgt dass Abfragen in Python übersprungen werden können. Man beachte, dass "True" und "False" keine Klassen sind, aber trotzdem großgeschrieben werden. Dies ist wahrscheinlich auf den schlechten Humor von Monty Python zurückzuführen.

Beispiel(in Python2):

if False:
    print "Hello World"

Dieses Beispiel wird gegen die Erwartung nie "Hello World" ausgeben, was auf den Fehler im "False"-Wert zurückzuführen ist.

Da das Problem (Stand: Juni 2017) in der Sprache noch nicht behoben ist, wird meist ein Workaround verwendet:

False=True
if False:
    print "Hello World"

Andere Datentypen

Typ Bedeutung
Float(float) Fließkommazahl, veraltet
None(None) ein konstanter Wert der nichts darstellen soll. Damit unbrauchbar. veraltet
String(str) eine Zeichenkette, aber echte Programmierer arbeiten NUR mit Integern. veraltet.
List/Tuple(list/tuple) Ein Tuple ist eine nicht veränderbare Liste, und beide sind unbrauchbar. veraltet
Dictionary(dict) Ein Wörterbuch zum Nachschlagen von englischen Vokabeln. Die Ausgangssprache ist Brainfuck und nicht einstellbar. nicht veraltet
Complex(cmplx oder so) Eine Zahl, die so komplex ist, dass man sie nicht verstehen kann. nicht nicht veraltet
long Ein Integer mit mehr Werten. Warum auch immer. veraltet
alles andere veraltet

Erweiterungen

Es gibt diverse Erweiterungen zum normalen CPython(Abgeleitet von C++ und Python, um die Konkurrenz zu verdeutlichen), wie z.B. CorePy für Programmierer die noch fauler sind. Denn damit lässt sich lesbarerer(nicht unbedingt lesbar!) Assembler-Code erzeugen.

Versionen

Python gibt es in 3 Versionen: Python1, Python2 und Python3

Python1

Sehr alt, aber noch am lesbarsten. Wird verwendet um Toaster mit WiFi-Antennen zu programmieren. Zum Ende der Weiterentwicklung von Python1 hatte Python im Spiel Open Source das Level 4.

Beispiel für Hello World:

print "Hello World"  # TODO: Integer statt strings verwenden

Python2

Die noch am meisten verwendete Version. Sie ist vollständig zu Python1 kompatibel. Sie besitzt aber weniger verwendbare Grundtypen, so wurde beispielsweise der Fehler bei "False" eingebaut, um die Schwierigkeit zu erhöhen. Zu Beginn der Entwicklung von Python3 hatte Pythom das Level 9.

Beispiel für Hello World:

print "Hello World"  # TODO: Integer statt strings verwenden

Python3

Dies ist die derzeitige Python Version. Sie hat einiges verändert, so wurde z.B. die Printanweisung zu einer Funktion. Damit funktioniert kein normales Python2- oder Python1-Programm in Python3. Zurzeit hat Python das Level 13.

Beispiel für Hello World:

print("Hello World")  # TODO: Integer statt strings verwenden
# Anmerkung: Der Code ist 1 [[Zeichen]] länger wenn man die [[Kommentar]]e nicht beachtet, und 1 Zeile länger wenn man die Kommentare beachtet

Python4

Es ist geplant, in Python4 den Syntax auf "[", "]", "<", ">", "+", "-", ",", ".", "import", "def", "class" und "()" zu beschränken. Damit würde Python noch näher zu seinem Vorbild Brainfuck kommen, und trotzdem objektorientiert und modularisierbar bleiben. Python4 wird als die finale Entwicklungsstufe gesehen, da 2 die erste Primzahl ist, und 4 2 mal 2, bzw. 2 hoch 2. Damit ist 4 die erste Primzahl hoch die erste Primzahl.

Beispiel für Hello World:

++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.+++.

Verwendung

Nirgends, außer unter Linux.

Alternativen


if (codingLanguageList.Contains(this.title)) {

wikiPage[] articleList = { A, Assembler, BASIC, Brainfuck, C, C++, C-Sharp, COBOL, D, Delphi, Eick#, Eiffel, Gehirnassembler, Haskell, HTML, Java, JavaScript, Logo, NXC, Pascal, Perl, PHP, Python, Robot Karol, SQL, Tcl, UML, Visual Basic, ZLORFIK };

} else if(article.Exists()) {

wikiPage[] articleList = { Programmer-Lang, Was deine Programmiersprache über dich verrät, Rekursive Programmierung};

} else {

EditTemplateCodingLanguage();

}


Linktipps: Faditiva und 3DPresso