PYTHON. 04 Funktionen II, Module

Ähnliche Dokumente
PYTHON. 03 for-schleifen, Funktionen

WS2017/ Oktober 2017

Quick-Start Informatik Programmieren in Python Teil 2

WS2018/ Oktober 2018

Vorlesung Skriptsprachen Duale Hochschule Stuttgart Sommersemester Dipl.-Ing. (FH) Volker Schepper

Python Prozeduren und Funktionen

Python 2. Vorlesung Computerlinguistische Techniken Alexander Koller. 28. Oktober 2014

PYTHON. 06 Objektorientierung II

Funktionen in JavaScript

Funktionen in JavaScript

Informatik I. 4. Funktionen: Aufrufe und Definitionen. 25. Oktober Albert-Ludwigs-Universität Freiburg. Informatik I.

Funktionen in Python

1 Funktionsaufrufe. Informatik I: Einführung in die Programmierung 4. Funktionen: Aufrufe und Definitionen. Standardfunktionen: Typen-Konversion

Zahlen raten. Al Sweigart, Eigene Spiele programmieren Python lernen, dpunkt.verlag, ISBN D3kjd3Di38lk323nnm

C# - Einführung in die Programmiersprache Methoden. Leibniz Universität IT Services

1 Berechnung von Summen (ca = 10 Punkte)

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

Methoden und Wrapperklassen

Einführung in die Computerlinguistik

Programmieren in Python

Python für Linguisten

1 def Anweisung. 2 Argumentübergabe. 3 Lokale Variablen. 4 Default Argumente. 5 Aufruf mit Schlüsselwort. 6 Variable Argumente. Funktionen in Python

Funktionen in Python

WS2018/ Oktober 2018

Python Einführung. Monica Selva Soto. 24 März Mathematisches Institut

Programmierkurs Python I

Algorithmik und Programmieren

1 Vererbung in Python

Übung zur Vorlesung EidP (WS 2018/19) Blatt 4

Themen der Übung. Methoden und Wrapperklassen. Vorteile von Methoden. Methoden. Grundlagen

C++ - Objektorientierte Programmierung Konstruktoren und Destruktoren

Einführung in die Programmierung Debugging

Funktionen. Theorie. Inhaltsverzeichnis. Programmieren mit Python Modul 4. 1 Modulübersicht 3

Python Intro. Vorsemesterkurs Informatik Praktischer Teil WS2012/13. 2.Oktober Vorkurs Informatik - WS 2012/13

Gültigkeitsbereich. T. Neckel Einführung in die wissenschaftliche Programmierung IN8008 Wintersemester 2016/

6. Zeiger Allgemeines Definition eines Zeigers

Objekte haben eine eigene Notation, also Schreibweise, beim Aufruf:

Python Intro I. Vorsemesterkurs Informatik Praktischer Teil WS 2013/14. 1.Oktober Vorkurs Informatik - WS 2013/14

Programmieraufgaben. 1. Hello World! Schreibe ein Programm, dass auf der Konsole den Text Hello World! ausgibt.

Übungsblatt 2. Java Vorkurs (WS 2017)

Eine JAVA Einführung ... Quellcode:... COMA Übung 3. T.Bosse. A.Griewank. Vorschau JAVA Programme Sprachen Kate

Funktionen: Rückgabewert

C++ - Einführung in die Programmiersprache Header-Dateien und Funktionen. Leibniz Universität IT Services Anja Aue

Verhalten. Def. und Nutzen von Verhalten. Pseudocode Schreibtischtest. Algorithmen

Objektorientiertes Programmieren II

Einführung in Python (2)

Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny

Beispiel 19. December 4, 2009

13 Unterprogramme erstellen

Inhaltsverzeichnis Einleitung xi Kapitel 1: Die Vorbereitung aufs Abenteuer

Java Einführung Methoden. Kapitel 6

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 4

Programmieren in Python

C++ - Objektorientierte Programmierung Konstante und statische Elemente

Module, Packete und PIP

Proseminar. C-Programmierung Grundlagen und Konzepte. Der Präprozessor. von: Svenja Neef

Programmierkurs Python I

Methoden-Expertin. Aufgabe 1. Das Neue. Lösung in JavaKara. Puzzle: Expertin D

Programmierung in Python

Erste Java-Programme (Scopes und Rekursion)

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Übersicht Shell-Scripten

Programmiergrundkurs

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 29

Einführung in Python Teil I Grundlagen

Programmierkurs Python I

Übung 04 Mehrkörper Keplerproblem

Minimaleinführung in Python 3

Thomas Sillmann. Swift im Detail HANSER

Programmiertechnik. Teil 4. C++ Funktionen: Prototypen Overloading Parameter. C++ Funktionen: Eigenschaften

Programmieren mit Python

Einstieg in die Programmierung mit Visual Basic.NET

Die freie Programmiersprache Python mit Beispielen für ihren praktischen Einsatz. Python User Group Köln

Steht in der ersten Zeile #!/usr/bin/python und hat man die Ausführungsrechte gesetzt kann man es direkt ausführen.

Einführung in die Programmierung für NF. Übung

Einführung in Java. Arne Hüffmeier. Angelehnt an Java-Vorkurs der Freitagsrunde. Methoden implementieren. Michelle Liebers, Dennis Hoffmann

Informatik für Schüler, Foliensatz 3 Vorhandene Funktionen und Wiederholschleifen

4 Schleifen -= Entstanden unter Excel 2003 =-

javascript Coding-Guidelines 2. Ausgabe Februar 2015 Der Guideline beschreibt den verwendeten Coding-Stil von javascript als eigene Richtline.

Statische und Nichtstatische Methoden Properties/ Eigenschaften

Speicherklassen (1) Lokale Variablen

Transkript:

PYTHON 04 Funktionen II, Module

Funktionen

Funktionen enthalten Programm-Teile können später im Programm aufgerufen werden können beliebig oft aufgerufen werden (und man muss nur die Funktion aufrufen, nicht den ganzen Code neu schreiben!)

Vorteile von Funktionen Wiederverwendung Fehlerquellen minimieren Lesbarkeit / Verständlichkeit einfache Wartung

Funktionen: Syntax Funktionen werden mit dem Schlüsselwort def gekennzeichnet, dann der Name der Funktion gefolgt von runden Klammern und Doppelpunkt der Programm-Code wird mit Einrückung geschrieben def meinefunktion(): Anweisung in den runden Klammern können Parameter übergeben werden

Funktionen: Parameter Funktionen müssen nicht immer das gleiche zurückgeben man kann sie auch steuern, indem man ihnen Variablen (=Parameter) mitgibt diese übergibt man in der runden Klammer

Funktionen: Parameter beim Definieren der Funktion gibt man den Parametern Namen, mit denen man die Parameter in der Funktion nutzen kann def meinefunktion(zahl): print(zahl)

Funktionen: Parameter beim Aufrufen der Funktion wird der entsprechende Parameter mitgegeben meinefunktion(2) obiger Befehl ruft die Funktion meinefunktion auf und übergibt ihr den Wert 2

</> Aufgabe trennstrich-parameter.py erweitere die Funktion trennstrich so, dass die Anzahl der Trennstriche als Parameter mit übergeben werden können trennstrich(10) macht 10 Striche (----------) trennstrich(2) macht 2 Striche (--)

</> Aufgabe func-addieren.py schreibe eine Funktion addieren, die 2 Parameter annimmt und diese miteinander addiert die Funktion printed das Ergebnis direkt z.b. addieren(10,5) gibt 15 aus

Funktionen: Rückgabewert (return) mit return können Funktionen Werte zurück geben anstatt also direkt zu entscheiden, was mit dem berechneten Wert passieren soll, kann die Funktion das Ergebnis auch einfach nur zurück geben der Rückgabewert kann dann direkt in eine Variable gespeichert werden: ergebnis = addieren(10,5) print(ergebnis)

</> Aufgabe func-addieren.py schreibe die Funktion addieren so um, dass das Ergebnis mittels return zurück gegeben wird und der print-befehl erst nach Aufrufen der Funktion erfolgt

Funktionen: optionale Parameter man kann für Parameter auch einen default-wert angeben diese Parameter müssen dann nicht mit übergeben werden, sind also optional def meinefunktion(zahl1, zahl2=5) wird an meinefunktion nur eine Zahl mit übergeben, wird für die zweite Zahl der default-wert genommen (in dem Fall 5)

Funktionen: optionale Parameter wir kennen bereits eine (System-) Funktion mit optionalen Parametern: range() hat optionalen Step-Parameter per default ist der step-wert 1 (zählt immer um 1 rauf) range(start, stop) range(start, stop, step)

Funktionen: optionale Parameter die optionalen Parameter müssen immer am Ende der Parameter- Liste stehen!

</> Aufgabe func-addieren-optional.py schreibe eine Funktion addieren mit 2 unbedingten und 2 optionalen Parametern (default-wert 0) addiere die Parameter in der Funktion und gib das Ergebnis zurück

Funktionen: Positionsparameter die Parameter werden der Reihe nach vergeben: def meinefunktion(z1, z2) meinefunktion(2, 4)

Funktionen: Schlüsselwortparameter oft ist es nicht einfach, sich zu merken, an welcher Stelle welcher Parameter steht besonders problematisch, wenn man verschiedene Datentypen übergeben möchte def schreiben(wort,anzahl,groesse,schriftart)

Funktionen: Schlüsselwortparameter man kann beim Aufrufen angeben, welchem Parameter welcher Wert zugewiesen werden soll schreiben(wort="hallo",schriftart="arial", groesse=12, anzahl=5)

</> Aufgabe func-schreiben.py schreibe eine Funktion schreiben mit 2 Parametern: wort und anzahl (wie oft das Wort geschrieben werden soll) schreiben("hello", 5) gibt 5 Mal hello aus tausche beim Aufrufen die beiden Parameter

Funktionen: beliebig viele Parameter mit einem Stern * vor dem Parameternamen wird gekennzeichnet, dass an seiner Stelle beliebig viele Parameter übergeben werden können def addieren(*zahlen) zahlen ist dabei ein Tupel aus den übergebenen Parametern

Funktionen: beliebig viele Parameter Beispiel mit mehreren Parametern: def meinefunktion(a,b,*z) ruft man diese Funktion auf, werden die ersten beiden Werte als a und b übergeben und alle weiteren im Tupel z

</> Aufgabe func-addieren.py schreibe die Funktion addieren so um, dass sie zwei unbedingte und beliebig viel weitere Parameter annehmen und miteinander addieren kann Hinweis: Tupel! -> for-schleife nutze eine Variable am Anfang der Funktion, zu der du jedes Mal in der Schleife den jeweiligen Wert dazu zählst (+=)

Übungen uebungen.py

</> Aufgabe 1 nutze die Funktion addieren aus dem letzten Beispiel definiere eine Liste liste mit mehreren Zahlen addiere nun bestimmte Stellen aus der Liste miteinander (indem du sie als Parameter an die Funktion addieren übergibst)

</> Aufgabe 2 definiere ein Dictionary auto mit bestimmten Eigenschaften (Farbe, Türen, Kraftstoff, ) gib die Eigenschaften des Autos aus: Türen: 5 Farbe: blau Kraftstoff: Diesel Gänge: 6 ändere nach der Ausgabe eine Eigenschaft aus dem Dictionary! z.b. Farbe auf silber

Module

Module man kann Python-Code aufteilen in verschiedene Dateien (= Module) z.b. Auslagerung von Funktionen die Module können dann eingebunden werden, wenn sie benötigt werden

Globale Module stehen jedem Python-Programm zur Verfügung kommen von Python direkt ( Standard-Bibliothek") oder z.b. von Drittanbietern z.b. math

Lokale Module selbst geschriebene Module, auf die nur man selbst zugreifen kann Aufteilung des eigenen Codes in mehrere Dateien macht Code übersichtlicher werden wie globale Module eingebunden

Module werden eingebunden mit dem Befehl import mehrere Module können untereinander oder hintereinander mit Beistrich eingebunden werden import math import random import math, random

Module die jeweiligen Funktionen und Variablen des Moduls können dann verwendet werden, indem sie mit Punkt an den Modulnamen angehängt werden import math math.pi math.sin

Module um nicht jedes Mal den gesamten Modul-Namen schreiben zu müssen, kann man das Modul auch unter einem neuen Namen importieren: import math as m m.pi m.sin

Module man kann auch nur Teile eines Moduls importieren ist besser, als eine Menge Funktionen usw. zu importieren, die man gar nicht braucht! from math import pi importiert nur die Konstante pi diese wird aber direkt importiert, man kann sie also direkt als pi aufrufen anstatt math.pi!

</> Aufgabe math-pi.py gib die Zahl pi aus, indem du einmal die Standard-Bibliothek math importierst, und einmal nur die Variable pi daraus!

</> Aufgabe math_functions.py & math-programm.py lege ein Modul math_functions.py an, das die Funktionen addieren und multiplizieren enthält verwende die Module in der Datei math-programm.py Modul-Namen dürfen nur Buchstaben, Zahlen und Underscore ( _ ) enthalten!