Python  | ||||
Allgemeines  | 
  Python ist eine Interpreter-Sprache. | Die Befehle werden erst zum Zeitpunkt der Ausführung compiliert. | Daher ist die Ausführung relativ langsam. | Fehler werden meistens erst bei der Ausführung des Codes erkannt | 
Homepage  | 
  http://python.org | Enthält auch Download-Links für Windows und Linux | ||
Installation  | 
  Viele Linux- und Unix-Installationen bringen Python mit. | |||
MicroPython  | 
  Läuft auf ESP8266, ESP32, Raspberry Pi Pico | Hat nur eine begrenzte Standardbibliothek | ||
| Syntax | Zeilenwechsel = Befehlsende | Unterstrukturen müssen eingerückt werden.
 Immer gleiche Einrückung verwenden (Leerzeichen oder Tab.  | 
  
if temp < 21:
     print("Zu kalt!") elif temp > 25: print("Zu warm!") else print("Angenehm!")  | |
| Datentypen | atomare Typen
  | 
  Abfrage type(a) ...class 'int'  | ||
| dynamische Typisierung | a = 42 -> legt eine neue Integer-Variable namens a an und 
weist ihr den ganzzahligen Wert 42 zu.  a = 2.17 -> a wird ein float-Objekt, selbst wenn es zuvor ein int-Objekt war.  | 
|||
| Explizite Deklaration | 
  Implizite Deklaration a = 32 integer b = 3.14 float c = True bool d = "Txt" string e = 42 / 5 float f = 42 //5 integer  | |||
| Listen | Liste erzeugen und abfragen numbers = [1, 2, 3] numbers [0] -> 1 numbers [-1] -> 3 numbers [1:] -> [2,3]  | 
  Länge der Liste abfragen
   len(numbers) -> 3  | 
  Liste erweitern numbers.append (4) numbers -> [1,2,3,4] numbers[-1] = 42 numbers -> [1,2,3,42]  | 
|
| extend | .extend()  Eine Liste kann um eine 2. Liste erweitert werden.  | 
  x = [1, 2, 3] y = [4, 5] x.extend(y) print(x)  | 
  [Out]: [1, 2, 3, 4, 5] | |
| Verschachtelte Listen | employees = [['Homer', 42], ['Jane', 37], ['Peter', 53]] | Abfrage employees = [1] -> ['Jane', 37] employees = [1][0] -> 'Jane' employees = [1][1] -> 37 Wertzuweisung employees [1][0] = 'Susi' employees = [1][0] -> 'Susi'  | ||
Tupel  | 
  speichern ebenfalls Objekte unterschiedlichen Typs
   Deklaration mit runden Klammern anstelle eckiger Klammern: employees = (('Homer', 42), ('Jane', 37), ('Peter', 53))  | 
  unveränderlich
   keine append-Funktion keine Schreibzugriffe  | 
  
||
| Dictionaries | assoziative Arrays, Hash-Maps | bilden Schlüssel-Objekte auf Werte ab. | 
  john = { 'name': 'John Doe', 'age': 42, 'address': { 'street': 'Main Street', 'postal-code': 12345, 'city': 'Springfield' } }  | |
| E/A | print("Zu kalt!") | |||
| Ablaufsteuerung | 
  IF if Logische Bedingung: ... elif Alternative Bedingung: ... Beliebig oft else: ... Nur einmal  | 
  while | for | |
| Module | Speicherung in ASCII-Text-Dateien: Modul.py | Hauptprogramm: __name__ == “__main__”  | 
  Wird das gleiche Programm von einem anderen Programm aufrufen, so ersetzt der Interpreter den Programmnamen __main__ durch den Aufrufnamen. | if __name__ == "__main__":
  print ("Ausführung nur bei direktem Aufruf als Hauptprogramm") else: print ("Ausführung nur, bei Aufruf durch ein anderes Modul")  | 
| Funktionen | Definition ohne Parameter
   def hello(): print("Hello, world!")  | 
  Definition mit Parameter
   def greet(name): print("Hallo,", name + "!")  | 
  Aufruf
   hello() greet("jens")  | |
| Rückgabewert
 def sum(a, b): return a + b x = sum(3, 5) -> x = 8  | 
  Mehrfache Rückgabewerte def mult_sum(a, b): return a + b, a * b Das Ergebnis ist ein Tupel  | 
   Keyword-Argumente
 mult_sum(b = 5, a = 3)  | 
  Default-Argumente
  
 def mult_sum(a, b = 0): return a + b, a * b Ruft man diese Funktion nur mit einem Argument auf, wird der Parameter b automatisch auf 0 gesetzt.  | 
  
|
| Bibliothek | Einbindung von Fremdmodulen | Einbinden der Bibliothek time 
   import time time.sleep()  | 
  Teilweise Einbindung
   from time import sleep -> Es wird nur die Funktion sleep eingebunden sleep(1) -> Der Name der Bibliothek kann beim Aufruf weggelassen werden.  | |
| yield | The yield statement sends a value back to the caller, but maintains the function’s state | def gen_yield(): yield "hel" yield "lo " yield "wor" yield "ld!"def func_return(): return "hel" return "lo " return "wor" return "ld!"  | 
  for value in generator_yield(): print(value, end="") | [Out]: "hello world!" | 
| for value in generator_return(): print(value, end="") | [Out]: "hel" print(start, end) | |||
Teil von  | 
  Programmier - Sprachen | Software | EDV und DFÜ | |
| 
	 | 
||||
Impressum Zuletzt geändert am 26.07.2020 11:39