forked from derphilipp/schulung_python
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit c195ab8
Showing
30 changed files
with
4,096 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
{ | ||
"metadata": { | ||
"name": "", | ||
"signature": "sha256:24e0369eb172ec383a05f81f372c26d06646472f04fe01f2ea97c8f6b5fdd4b6" | ||
}, | ||
"nbformat": 3, | ||
"nbformat_minor": 0, | ||
"worksheets": [ | ||
{ | ||
"cells": [ | ||
{ | ||
"cell_type": "markdown", | ||
"metadata": {}, | ||
"source": [ | ||
"Kontaktdaten:\n", | ||
"------------------\n", | ||
"* Philipp Wei\u00dfmann\n", | ||
"* [email protected]\n", | ||
"* +49 162 42 52 802\n", | ||
"\n", | ||
"\n", | ||
"\n", | ||
"\n", | ||
"![Python is fun](http://imgs.xkcd.com/comics/python.png \"Python is fun\") \n", | ||
"\n", | ||
"Intro\n", | ||
"====================\n", | ||
"\n", | ||
"### Dieses Dokument\n", | ||
"* Dieses Dokument kann und soll editiert werden\n", | ||
"* Die Unterlagen sind absichtlich mit L\u00fccken versehen, die Du f\u00fcllen kannst\n", | ||
"* F\u00fcr Notizen und \"herumspielen\" mit Code ist in diesem Kurs genug Zeit - bitte melde Dich, wenn Du bei einer \u00dcbung mehr Zeit m\u00f6chtest\n", | ||
"* Mein Ziel f\u00fcr diesen Kurs, ist es Dir einen Start zu geben\n", | ||
"\n", | ||
"### Meine Bitte\n", | ||
"* Stelle Fragen\n", | ||
"* Hinterfage Dinge\n", | ||
"* Probiere Dinge aus\n", | ||
"* Habe Spa\u00df" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"collapsed": false, | ||
"input": [], | ||
"language": "python", | ||
"metadata": {}, | ||
"outputs": [] | ||
} | ||
], | ||
"metadata": {} | ||
} | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
{ | ||
"metadata": { | ||
"name": "", | ||
"signature": "sha256:99472e9bbca81fbcedec2a10da1a454905118c2a5475815d78baaa69ebbd9d6b" | ||
}, | ||
"nbformat": 3, | ||
"nbformat_minor": 0, | ||
"worksheets": [ | ||
{ | ||
"cells": [ | ||
{ | ||
"cell_type": "markdown", | ||
"metadata": {}, | ||
"source": [ | ||
"Einf\u00fchrung\n", | ||
"====================\n", | ||
"\n", | ||
"Die Sprache\n", | ||
"--------------------\n", | ||
"\n", | ||
"### Autor \n", | ||
"* Guido van Rossum ![von Rossum](https://www.python.org/~guido/images/IMG_2192.jpg \"van Rossum\")\n", | ||
"* [Centrum Wiskunde & Informatica](https://www.cwi.nl/) (Amerterdam)\n", | ||
"* Heute: [Dropbox](http://de.wikipedia.org/wiki/Dropbox) (zuvor Google)\n", | ||
"\n", | ||
"### Herkunft\n", | ||
"* Als Nachfolger f\u00fcr die Programmier-Lehrsprache *ABC*\n", | ||
"* Namensgebung: [Monty Python](http://de.wikipedia.org/wiki/Monty_Python)\n", | ||
"\n", | ||
"### Ziele\n", | ||
"* Einfach, intuitiv, m\u00e4chtig\n", | ||
"* Open Source\n", | ||
"* Quelltext, der *so einfach zu lesen ist wie Englisch*\n", | ||
"* F\u00fcr t\u00e4gliche Aufgaben geeignet\n", | ||
"* Kurze Entwicklungszeit\n", | ||
"\n", | ||
"Bedeutung\n", | ||
"--------------------\n", | ||
"\n", | ||
"### Popularit\u00e4t\n", | ||
"* [Python is now the most popular introductory teaching kanguage at top U.S. universities](http://cacm.acm.org/blogs/blog-cacm/176450-python-is-now-the-most-popular-introductory-teaching-language-at-top-us-universities/fulltext)\n", | ||
"* [Top Sprachen: Python, Java, Matlab, C](http://www.pgbovine.net), Stand: Juli 2014\n", | ||
"* [Github](https://github.com/): Platz 5 (2013, 2012); Platz 1: Javascript\n", | ||
"\n", | ||
"### Einfl\u00fcsse\n", | ||
"* Beeinflusst von:\n", | ||
" * ABC, Algol 60, Modula-3, Icon, C, Perl, LISP, Smalltalk, Tcl, Haskell\n", | ||
"* Beeinflusste:\n", | ||
" * Ruby, Boo, Groovy, Cython, Swift \n", | ||
" \n", | ||
"### Einsatz\n", | ||
"* Systemwerkzeuge (z.B. Ubuntu, RedHat, u.v.m.)\n", | ||
" * [Ubuntu Software Center](http://en.wikipedia.org/wiki/Ubuntu_Software_Center)\n", | ||
"* Web-Frameworks und Cloud-Dienste (z.B. Django, Flask, u.v.m.)\n", | ||
" * [OpenStack](http://www.openstack.org/)\n", | ||
" * [Youtube](http://www.youtube.com/watch?v=G-lGCC4KKok)\n", | ||
" * [Dropbox](https://www.dropbox.com/developers/core/docs/python)\n", | ||
" * [Yahoo Maps](https://de.maps.yahoo.com/)\n", | ||
"* Oberfl\u00e4chen Programme (z.B. Qt, GTK, wxWindows, u.v.m.)\n", | ||
" * [Miro](http://en.wikipedia.org/wiki/Miro_(software))\n", | ||
"* Skripting Sprache in Programmen\n", | ||
" * [Blender 3D](http://www.blender.org/)\n", | ||
" * LibreOffice\n", | ||
"* Bioinformatik\n", | ||
"* Raspberry Pi\n", | ||
"* u.v.m." | ||
] | ||
} | ||
], | ||
"metadata": {} | ||
} | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,101 @@ | ||
{ | ||
"metadata": { | ||
"name": "", | ||
"signature": "sha256:e21001f1b4f5734fcbccc5b568801f4916f95a09622e919e9a67bf9568890ada" | ||
}, | ||
"nbformat": 3, | ||
"nbformat_minor": 0, | ||
"worksheets": [ | ||
{ | ||
"cells": [ | ||
{ | ||
"cell_type": "markdown", | ||
"metadata": {}, | ||
"source": [ | ||
"Grundlagen\n", | ||
"----------------\n", | ||
"\n", | ||
"### Interpreter\n", | ||
"* Vereinfacht:\n", | ||
" * F\u00fchrt Programmcode Zeile f\u00fcr Zeile aus\n", | ||
" * Einfache Checks beim Start eines Programms\n", | ||
"* Vorteile:\n", | ||
" * Kein langes Kompilieren\n", | ||
" * Komplexe Teile werden vielleicht eh nie erreicht\n", | ||
" * Schneller arbeiten / \u00e4ndern m\u00f6glich\n", | ||
"* Nachteile\n", | ||
" * Kein \"Compiler-Check\"\n", | ||
" \n", | ||
"### Implementierungen\n", | ||
"* CPython\n", | ||
" * In C geschrieben - Grundlage dieses Kurses\n", | ||
"* [Jython](http://www.jython.org/)\n", | ||
" * L\u00e4uft in der [JVM](http://de.wikipedia.org/wiki/Java_Virtual_Machine)\n", | ||
"* [IronPython](http://ironpython.net/)\n", | ||
" * L\u00e4uft im .Net Framework\n", | ||
"* [PyPy](http://pypy.org/)\n", | ||
" * Implementiert in Python (genau: RPython)\n", | ||
" \n", | ||
"### Sprachversionen\n", | ||
"* Aktuell gepflegte Versionen\n", | ||
" * Python 2.7.8 (der 2er Pfad wird noch Jahrlang gepflegt)\n", | ||
" * Python 3.4.1 (Grundlage dieses Kurses)\n", | ||
"* Unterschiede\n", | ||
" * Relativ klein\n", | ||
" * [Unicode](http://de.wikipedia.org/wiki/Unicode) Handling\n", | ||
" * Kleinere Optimierungen\n", | ||
" * Migration bei kleinen Projekten oftmals automatisiert m\u00f6glich\n", | ||
"* [Virtuelle Maschinen](http://de.wikipedia.org/wiki/Virtuelle_Maschine)\n", | ||
" * Python l\u00e4uft in einer VM\n", | ||
" * Speicherverwaltung: VM\n", | ||
" * Fehlerbehandlung: VM\n", | ||
" * Geschwindigkeit: Deutlich h\u00f6her als Java / C#, minimal langsamer als C\n", | ||
" \n", | ||
"### Kurs-Spezifisch\n", | ||
"* In diesem Kurs verwendete Version: [Anaconda Python](http://continuum.io/downloads)\n", | ||
" * Python Programm\n", | ||
" * Sehr viele popul\u00e4re Module mitinstalliert\n", | ||
" * Module, die in diesem Kurs verwendet werden (und nicht mit 'blankem' Python kommen) \n", | ||
" * pyqt\n", | ||
" * Requests\n", | ||
" * Beautifulsoup\n", | ||
" * Flask (+ weitere Flask Module)\n", | ||
"* Editoren (zum Ausprobieren und \"rumpspielen\")\n", | ||
" * [Notepad++](http://notepad-plus-plus.org/)\n", | ||
" * [Visual Studio](http://www.visualstudio.com/news/vs2013-community-vs)\n", | ||
" * Kostenfreies Visual Studio 2013 Community Edition __sollte__ ebenfalls funktionieren, ist zum Zeitpunkt des Kurses noch nicht ver\u00f6ffentlich\n", | ||
" * Mit [PyTools Addon](https://pytools.codeplex.com/)\n", | ||
" * [PyCharm](https://www.jetbrains.com/pycharm/) (von den Machern von Resharper)\n", | ||
" * Tipp: Kostenfreie [Educational Version mit \u00dcbungen](https://www.jetbrains.com/pycharm-educational/) \n", | ||
" * [Eclipse](https://www.eclipse.org/home/index.php)\n", | ||
" * Mit [PyDev Plugin](http://pydev.org/)\n", | ||
" * [IPython](http://ipython.org/) - Dieses Dokument ist ein IPython Notebook\n", | ||
"\n", | ||
"### \u00d6ffnen dieses Dokuments \"Zu Hause\"\n", | ||
"* Windows:\n", | ||
" * Anaconda Python (s.o.) installieren\n", | ||
" * IPython Notebook starten (Verkn\u00fcpfung in Startmen\u00fc)\n", | ||
" * Diese Dokumente \u00f6ffnen\n", | ||
"* Linux:\n", | ||
" * IPython via Paketmanager installieren, z.B.: \n", | ||
" `sudo apt-get install ipython3`\n", | ||
"* MacOS:\n", | ||
" * IPython installieren via MacPorts:\n", | ||
" `sudo port install ipython`\n", | ||
" \n", | ||
" " | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"collapsed": false, | ||
"input": [], | ||
"language": "python", | ||
"metadata": {}, | ||
"outputs": [] | ||
} | ||
], | ||
"metadata": {} | ||
} | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
{ | ||
"metadata": { | ||
"name": "", | ||
"signature": "sha256:5e8c65673e176723173895f8725fa840cff5535e77958b32e957268e79ac60ee" | ||
}, | ||
"nbformat": 3, | ||
"nbformat_minor": 0, | ||
"worksheets": [ | ||
{ | ||
"cells": [ | ||
{ | ||
"cell_type": "markdown", | ||
"metadata": {}, | ||
"source": [ | ||
"Philosophie\n", | ||
"-----------------\n", | ||
"\n", | ||
"### Ziele des Kurses\n", | ||
"\n", | ||
"* Grundlagen von Python\n", | ||
"* Reinschnuppern\n", | ||
"* Erstes Gef\u00fchl bekommen\n", | ||
"\n", | ||
"\n", | ||
"### Zum Weiterlernen\n", | ||
"\n", | ||
"* [Dive into Python 3](http://www.diveintopython3.net)\n", | ||
"* [The Python Tutorial](https://docs.python.org/3.4/tutorial/) \n", | ||
"* [Learn Python the Hard Way](http://learnpythonthehardway.org/) (Python 2)\n", | ||
"* [PyCharm Educational Edition](https://www.jetbrains.com/pycharm-educational/) \n", | ||
"\n", | ||
"### The Zen of Python\n", | ||
"\tThe Zen of Python, by Tim Peters\n", | ||
"\t\n", | ||
"\tBeautiful is better than ugly.\n", | ||
"\tExplicit is better than implicit.\n", | ||
"\tSimple is better than complex.\n", | ||
"\tComplex is better than complicated.\n", | ||
"\tFlat is better than nested.\n", | ||
"\tSparse is better than dense.\n", | ||
"\tReadability counts.\n", | ||
"\tSpecial cases aren't special enough to break the rules.\n", | ||
"\tAlthough practicality beats purity.\n", | ||
"\tErrors should never pass silently.\n", | ||
"\tUnless explicitly silenced.\n", | ||
"\tIn the face of ambiguity, refuse the temptation to guess.\n", | ||
"\tThere should be one-- and preferably only one --obvious way to do it.\n", | ||
"\tAlthough that way may not be obvious at first unless you're Dutch.\n", | ||
"\tNow is better than never.\n", | ||
"\tAlthough never is often better than *right* now.\n", | ||
"\tIf the implementation is hard to explain, it's a bad idea.\n", | ||
"\tIf the implementation is easy to explain, it may be a good idea.\n" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"collapsed": false, | ||
"input": [], | ||
"language": "python", | ||
"metadata": {}, | ||
"outputs": [] | ||
} | ||
], | ||
"metadata": {} | ||
} | ||
] | ||
} |
Oops, something went wrong.