Python lernen
Inhalt
Python lernen¶
Diese Seite: Kurzanleitung, sich ganz schnell Python ‘draufzuschaffen, wenn man schon C oder Java kann.
Wissen¶
Sachsystematische Darstellung der wichtigsten Python-Konstrukte, kurz und knackig: https://jakevdp.github.io/WhirlwindTourOfPython/ (auch als pdf in Moodle)
ganz kurz, quasi ein Spickzettel: https://learnxinyminutes.com/docs/python/
Python Primer for Java Developers: https://lobster1234.github.io/2017/05/25/python-java-primer/
einschlägige Konventionen: PEP 8 – Style Guide for Python Code
Damit hat man das Wissen. Das alleine aber ist so unfruchtbar wie ein Wörterbuch beim Sprachenlernen.
Können: Fingerübungen mit Codewars¶
In einem Studienprojekt haben wir ausprobiert, wie man am besten auf Python umsteigen kann.
Ergebnis: Am besten ist es, viiieeele kleine Fingerübungen zu machen. Unsere Empfehlung;
Holen Sie sich einen (anonymen) Account auf https://www.codewars.com/.
Lösen Sie regelmäßig kleine Katas
Ziel sollten mindestens 200 Punkte oder der 6. kyu sein, besser 300 Punkte.
Versuchen Sie ein Gefühl zu entwickeln für Ihren Leistungsstand: Suchen Sie eine Balance zwischen Unter- und Überforderung. Da es hier um “Kilometer machen” geht, machen Sie lieber mehr kleine als wenige große Katas.
Ähnliche Plattformen:
https://www.hackerrank.com/domains/python (nicht ausprobiert)
Mit Codewars arbeiten:
Auch wenn das geht: Programmieren Sie nicht direkt in Codewars, sondern arbeiten Sie lokal ein einem (z.B. Jupyter-) Notebook. Dieses Notebook ist Ihr Lernjournal, Ihre wichtigste Ergebnissicherung in Ihrem Python-Lernprojekt.
Finden Sie in Ihrem Notebook die Lösung. Kopieren Sie diese dann nach Codewars.
Nachdem Sie in Codewars eine korrkte Lösung gepostet haben, können Sie auch sehen, wie andere Codewars-Nutzer die Aufgabe gelöst haben.
Wichtig: Sie können in Python auch wie in C programmieren. Doch damit verpassen Sie das Wesentliche. Python nutzt man wegen seiner pythonischen Idiomatik. Wir empfehlen Codewars, weil man hier die anderen Lösungen studieren kann - denn sie sind ein Quell von Einsicht und Schönheit.
Verstehen Sie die Lösung überhaupt?
Ist etwas darunter, das pythonischer ist als Ihre Lösung?
Versuchen Sie die eleganteren Lösungen in eigenen Worten nachzucodieren.
Ergänzen Sie in Ihrem Notebook ggf. Ihre Lösung.
Spiel / game¶
Wortfeld:
EN: game; to play a game;
Spieltheorie
DEF: in einem durch Spielregeln und eine Spiele-Umgebung vorgegebenen Suchraum optimal (und oft auch kompetitiv) bestimmte Ziele erreichen
Setzen Sie mit ein paar leistungsähnlichen Freunden einen Clan auf und lösen Sie Aufgaben kompetitiv. Wenn Sie damit bleiben Sie bei der Stange.
@High performer: Wenn Sie merken, dass ein Clan-Mitglied schwächelt, fragen Sie nach, was los ist, unterstützen Sie es!
Herumspielen¶
Wortfeld:
DEF: ziel- und regelfreies, oft gedankenverlorenes “herumspielen” mit einer Sache.
EN: play around
Beim Spielen im Sinne von game geht es darum, eine Challenge überhaupt (effektiv) oder ressourcenschonend (effizient) zu lösen. Eine Lösung genügt, und weiter!
Beim Spielen im Sinne von play around geht es darum, mit dem vorhandenen Material
möglichst viele unterschiedliche Herangehensweisen auszuprobieren
die pythonisch schönste oder eleganteste Lösung zu finden
Lösungsansätze zu finden, an die bisher noch niemand gedacht hat
Herumspielen in Python geht so:
Gegeben ist eine Variable, die mit einer bestimmten Datenstruktur vorbelegt ist.
Gesucht: Was kann man mit dieser Variablen alles anfangen?
Beispiel: Herumspielen mit Mengen, Listen, Dicts