Python Programmierung
Kontaktdaten Homepage: http://wwwlehre.dhbw-stuttgart.de/~schepper/ Email: Volker. Schepper [A@T] yahoo.de
Vorlesung Skriptsprachen Vorlesung: 06.03.2013 13.03.2013 20.03.2013 27.03.2013 03.04.2013 10.04.2013 17.04.2013 24.04.2013 08.05.2013 15.05.2013 Uhrzeit: 13:45 bis 15:30 (jeweils) Raum: 1.18 Klausur: 22.05.2013 ( voraussichtlich)
Inhalt Organisatorische Fragen Einführung Scriptsprachen Einführung Python Mathematische Operatoren Datei Operationen Multithreading Netzwerk UDP & TCP/IP Datenbank GUI
EVA Eingabe Verarbeitung Ausgabe
Zeittafel Fortran (1954) COBOL (1960) BASIC (1964) B (1970) C (1972) C (1983) Python (1991) 1950 1960 1970 1980 1990 t
Python Einführung Quellcode Compiler Ausführbares Programm Betriebssystem Hardware - Dipl.- Ing.(FH) Volker Schepper
Python Einführung Quellcode Interpreter Betriebssystem Hardware
Python Einführung Quellcode Interpreter [Quellcode] Interpreter Betriebssystem Hardware
Übersicht Skriptsprachen APL Abkürzung für: A Programming Language. Große Verbreitung für IBM System/360 Basic Abkürzung für: Beginner sall-purposesymbolicinstructioncode. Anfangsverbreitung bei Homecomputer uns später bei PCs. Forth Perl Python Ruby PHP Für dynamische Homepage. Serverseitige Ausführung. JavaScript Nicht zu verwechseln mit Java. Hauptsächlich für dynamische Homepage. Skript wird dabei direkt im Browser ausgeführt.
Python Einführung Einfach Einfache Syntax Klar und verständlichen Code Flexibel Kleine / große Applikationen Serverseitige Programmiesprache Plattform unabhängig Komfortabel Automatische Speicherverwaltung Umfangreiche Standardbibliothek (Rapid Prototyping)
Python Einführung Weitere Vorteile von Python im Vergleich zu C: abstrakten Datentypen erlauben komplexe Operationen in einem Ausdruck. Gruppierung von Ausdrücken erfolgt durch Einrückung anstatt durch Anfangs- und Ende-Klammern. Variablen und Argumente müssen nicht deklariert werden
Python Einführung Einfach Einfache Syntax Klar und verständlichen Code Flexibel Kleine / große Applikationen Serverseitige Programmiesprache Plattform unabhängig Komfortabel Automatische Speicherverwaltung Umfangreiche Standardbibliothek (Rapid Prototyping)
Python Einführung Entwickelt 1991 von Guido van Rossum Lizenz: Python Software Foundition Lizenz Kompatibel zu GPL Interpreter Sprache Freie Verfügbarkeit Unterschiedliche Implementierungen Aktuelle Version Python 3.3.0
Einsatz von Python D-Link Uses Python to control firmware updates. Philips Semiconductor(NXP) Production line in Fishkill runs on Python. Google Offizielle Programmiersprache YouTube Größtenteils in Python programmiert. Honeywell Python zur allgemeinen Softwareentwicklung eingesetzt. One Laptop per Child (100Dollar-Laptop) Benutzeroberfläche in Python
Interpreter cpython Am meist verwendete Interpreter, ist mit der Programmiersprache C geschrieben. Jython Implementierung in Java. Java Bibliotheken können dynamisch benutz werden. IronPython Interpreter wurde mit C# geschrieben. Es können.net Bibliotheken verwendet werden. PyPy Just-In-Time (JIT) Compiler deutlich schneller Ausführung. Stackless Python Rücksprungadressen lokal speichern. Rekursionstiefe nur noch durch den Arbeitsspeicher begrenzt.
Plattformen Windows Linux Mac OS Android???
Datentypen Ganze Zahlen Ganze Zahlen Typ: int keine Obergrenze Umrechnung Hexadezimal -> hex( ) Oktal-> oct( ) Dual-> bin( )
Datentypen Gleitkommazahl Gleitkommazahl Typ: float 64Bit Minium: -1,7 * 10(-308) ; Maximum: +1,7 * 10(308) x1= 8.4 x2 = 2e2 x3 = 3.5E3 X4 = 4.2e-3 8.4 200.0 3500.0 0.0042 print (x1, "/n", x2, "/n", x3, "/n", x4)
Arithmetische Operatoren Addition + Subtraktion - Multiplikation * Division / Modulo % Ganzzahldivision // Potenzieren **
Boolesche Operatoren Und-Verknüpfung Oder-Verknüpfung Nicht and or not
Vergleich Operatoren Gleich == Ungleich!= Kleiner < Größer > Kleiner oder gleich <= Größer oder gleich >=
Ausgabe Aus-/ Eingabe print ("Hello World") Hello World Eingabe i = int(input("zahl eingeben: ")) Zahl eingeben:
if Anweisung # Testausgabe i = int(input("zahl eingeben: ")) if i > 0: elif i < 0: else: print ("Zahl größer 0") print ("Zahl kleiner 0") print ("Zahl gleich 0")
Rangfolge der Operatoren Operator Bedeutung ( ) Klammer * / % // Multiplikation, Division, Modulo, Ganzzahldivision + - Addition, Subtraktion < <= > >= ==!= Kleiner, kleiner o. gleich, größer, größer o. gleich, ungleich not logische Verneinung and Logisches Und or Logisches Oder
for Schleife cpu= ["Pentium", "Celeron", "Athlon", "Bulldozer", "Phenom", "Sempron"] for x in cpu: print (x) if x == 3: print( Zahl ist gleich drei ) Pentium Celeron Athlon Bulldozer Phenom Sempron
for Schleife for i in range(4): print(i) 0 1 2 3 for i in range(3, 7): print(i) 3 4 5 6 for i in range(6, 13, 2): print(i) 6 8 10 12
for Schleife cpu= ["Pentium", "Celeron", "Athlon", "Bulldozer", "Phenom", "Sempron"] for x in cpu: print (x) Pentium Celeron Athlon Bulldozer Phenom Sempron
while Schleife Bedingung false true Anweisung 1 Anweisung 2 Anweisung 3 Anweisung n Weitere Anweisung des Programms
while Schleife n = 5 i = 0 while i < n: i = i + 1 print(" i: ", i) i: 1 i: 2 i: 3 i: 4 i: 5
while Schleife n = 100 i = 0 Berechnung beendet Summe: 100 while i < n: i = i + 1 else: print("berechnung beendet") print("summe: ", i)
while Schleife Bedingung false true Anweisung 1 Anweisung 2 Anweisung 3 Anweisung n else: Anweisung 1 Anweisung 2 Anweisung n Weitere Anweisung des Programms
while Schleife n = 100 i = 0 Summe: 51 while i < n: i = i + 1 if i > 50: else: break print("fertig") print("summe: ", i) SS2012 Python Programmierung
while Schleife Bedingung false true Anweisung 1 Anweisung 2 break Anweisung n else: Anweisung 1 Anweisung 2 Anweisung n Weitere Anweisung des Programms SS2012 Python Programmierung
Insatllation Python Ausführen *.py möglich http://www.python.org/ Python Portable Keine Administratorrechte Komfortable IDE http://www.portablepython.com/ SS2012 Python Programmierung