Skip to content
Snippets Groups Projects
Commit 7041317c authored by Martin Bellgardt's avatar Martin Bellgardt
Browse files

python handout hinzugefügt

parent 93792a4a
No related branches found
No related tags found
No related merge requests found
File added
\title{Python Workshop}
\author{Martin Bellgardt}
\date{\today}
\documentclass[12pt]{article}
\usepackage{listings}
\usepackage[utf8]{inputenc}
\usepackage[cm]{fullpage}
\begin{document}
\maketitle
\section{Syntax}
Python-syntax orientiert sich an natürlicher Sprache. Anstatt Klammern wird Einrückung verwendet um Blöcke zu definieren.
\begin{lstlisting}
import somePackage # Ein Paket einbinden
from someOtherPackage import someFunction # Nur eine Funktion
# einbinden
def someFunction(arg1,arg2): # eine Funktion definieren
doStuff() # eine Funktion aufrufen
answer = 42 # Integer
almostAnswer = 41.99 # Float
text = "This is a string" # String
list = [1,2,[3,4],"Other stuff",12.5] # Liste
# Eine Liste ist nicht auf einen Typen festgelegt
dictionary = {"Cheese" : 1, "Bacon" : 12.5}
# Eine sehr nuetzliche Datenstruktur in Python
for i in list: # i wird ueber alle Listenelemente iteriert
if i == 1 and answer > almostAnswer: # If abfrage
print "Viel Spass auf der KISS" # Ausgabe
print "Zahl" + str(12.5) # str() macht strings
# aus anderen Datentypen
file = open("someFile","r") # open some file for reading
for line in file: # For every line of the file
print line # print the line
file.close() # close the file
\end{lstlisting}
\newpage
\section{Nützliche Pakete}
Hier sind nur einige Beispiele für nützliche Pakete. Es gibt Python Pakete für so ziemlich alles. Im zweifelsfall einfach mal Google fragen.
\begin{itemize}
\item \textbf{\texttt{sys}} - Ermöglicht z.B. zugriff auf Programmargumente mit \texttt{sys.argv}
\item \textbf{\texttt{os}} - Stellt funktionen bereit um mit Dateien und Pfaden zu arbeiten (löschen, verschieben, verlinken, etc.)
\item \textbf{\texttt{PIL (Python Image Library)}} - Viele nützliche Funktionen zum laden, speichern und manipulieren von Bildern. (benutzen mit \texttt{import Image})
\item \textbf{\texttt{matplotlib.pyplot}} - Generiert Diagramme. Nützlich um Daten graphisch auszuwerten.
\item \textbf{\texttt{numpy, scipy}} - Stellt fortgeschrittene mathematische funktionen und Strukturen bereit wie z.B. Matrizen, Vektoren etc.
\item \textbf{\texttt{pyffmpeg}} - Wrapper für ffmpeg. Nützlich zum arbeiten mit Videos.
\item \textbf{\texttt{pyopencv}} - Wrapper für OpenCV. Implementiert Algorithmen zur
Bilderkennung.
\item \textbf{\texttt{urllib2}} - Kann z.B. Dateien über HTTP herunterladen. Nützlich um z.B. auf web-APIs zuzugreifen.
\item \textbf{\texttt{antigravity}} - Implementiert Levitation, sodass man nicht mehr auf überfüllte ASEAG Busse angewiesen ist.
\end{itemize}
\section{Python Image Library}
\begin{lstlisting}
import Image
im = Image.open("image.png") # Das Bild image.png wird geladen
r,g,b = im.getpixel((1,2)) # RGB werte fuer den Pixel an der stelle (1,2)
r,g,b,a = im.getpixel((1,2)) # oder RGBA fuer z.B. PNG bilder
width, height = im.size # breite und hoehe des bildes
\end{lstlisting}
\end{document}
%This is never printed
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment