Operation Manual
“buch” — 2014/9/6 — 18:56 — page 22 — #18
Inhaltsverzeichnis
Typumwandlung ................................................................................................................. 646
Variablen und Daten vergleichen .................................................................................. 647
Gültigkeit von Variablen ................................................................................................... 648
Garbage Collection ............................................................................................................ 649
Shared References .............................................................................................................. 650
17.3 Operatoren ........................................................................................................................... 651
Zuweisungen ....................................................................................................................... 653
Extended Sequence Unpacking ...................................................................................... 654
17.4 Verzweigungen (if) ............................................................................................................ 654
if-Verzweigungen ............................................................................................................... 654
Bedingungen ....................................................................................................................... 655
if-Kurzschreibweise ........................................................................................................... 655
17.5 Schleifen (for und while) .................................................................................................. 656
Schleifen über Zahlenbereiche (range) ........................................................................ 657
Schleifen über die Zeichen einer Zeichenkette .......................................................... 658
Schleifen über Listen, Tupel und Sets ........................................................................... 658
Schleifen über Dictionaries ............................................................................................. 659
Schleifen über alle Script-Parameter ............................................................................ 660
Schleifen über die Zeilen einer Textdatei .................................................................... 661
Schleifen über alle Dateien eines Verzeichnisses ..................................................... 661
17.6 Zeichenketten ..................................................................................................................... 662
Unicode ................................................................................................................................. 664
raw-Zeichenketten ............................................................................................................. 664
String-Konvertierung und -Formatierung ................................................................... 664
Reguläre Ausdrücke ........................................................................................................... 667
17. 7 Listen ...................................................................................................................................... 668
map ......................................................................................................................................... 669
reduce .................................................................................................................................... 670
filter ........................................................................................................................................ 671
zip ............................................................................................................................................ 671
17.8 Umgang mit Fehlern (Exceptions) ................................................................................. 672
try/except .............................................................................................................................. 672
Fehler in Funktionen und Methoden ............................................................................ 674
with/as .................................................................................................................................. 675
Selbst Exceptions auslösen .............................................................................................. 676
Programmunterbrechungen abfangen ....................................................................... 677
22
“buch” — 2014/9/6 — 18:56 — page 23 — #19
Inhaltsverzeichnis
17.9 Funktionen ........................................................................................................................... 678
Eigene Funktionen definieren ........................................................................................ 678
Lokale und globale Variablen .......................................................................................... 680
Funktionsparameter .......................................................................................................... 682
Optionale Parameter ......................................................................................................... 683
Variable Parameteranzahl ............................................................................................... 684
Lambda-Funktionen .......................................................................................................... 685
Funktionales Programmieren ......................................................................................... 687
17.10 Objektorientiertes Programmieren .............................................................................. 688
Eigene Klassen definieren ................................................................................................ 689
Methoden ............................................................................................................................. 690
Konstruktor .......................................................................................................................... 691
Klassenvariablen und Namensräume .......................................................................... 692
Private Klassenvariablen .................................................................................................. 694
Getter- und Setter-Methoden ......................................................................................... 694
Operator Overloading ....................................................................................................... 695
Beispiel: Rechteck-Klasse ................................................................................................. 695
Vererbung ............................................................................................................................. 697
Klassen, Objekte und Instanzen ..................................................................................... 698
17.11 Systemfunktionen ............................................................................................................. 700
Zugriff auf die Programmparameter ............................................................................ 700
Zugriff auf Standardeingabe und Standardausgabe ............................................... 701
Modul-Metainformationen ermitteln ......................................................................... 701
Programm beenden ........................................................................................................... 701
Andere Programme bzw. Kommandos aufrufen ...................................................... 702
Warten (sleep) ..................................................................................................................... 703
18 Programmieren mit Python ......... ..... ..... ..... ........ ..... ..... ..... ..... ........ ..... ..... .... 705
18.1 Programmieren lernen ..................................................................................................... 705
Beispiel 1: Die Summe der Zahlen von 1 bis 1000 ausrechnen ..... ....................... 706
Beispiel 2: Die Fakultäten von 1! bis 40! ausrechnen .............................................. 707
Beispiel 3: Palindromtest ................................................................................................. 709
18.2 GPIO-Zugriff ......................................................................................................................... 710
GPIO-Pins lesen und verändern ..................................................................................... 710
Taster und Schalter ............................................................................................................ 713
Software-PWM .................................................................................................................... 715
23