Inhaltsübersicht
- Überblick und Hinweise
- Online-Material
- Hinweise zu kleinen Fallstricken bei der Programmierung mit TigerJython und Python allgemein
Überblick und Hinweise
Wir arbeiten im Unterricht u.a. mit der IDE (Integrated Development Enviroment - Integrierte Entwicklungsumgebung) TigerJython (Link zur Seite von Tobias Kohn. Dort befindet sich auch der DOWNLOAD-Bereich)
TigerJython stellt für die Schule und den Unterricht eine hervorragende Arbeitsumgebung bereit, um Python (Version 2.7) zu lernen und auszuprobieren. In die IDE integriert sind nicht nur ein komfortabler Source-Code-Editor und Debugger, sondern auch verschieden Bibliotheken (z.B. gturtle, panel, gamegrid, ...). Mit diesen lassen sich schnell und einfach kleine Anwendungen erstellen, die einen hohen Komplexitätsgrad erreichen können. Zusätzlich können JAVA-Klassen in das TigerJython-System eingebunden werden, da TigerJython intern mit JYTHON 2.7 (kompatibel zu Python 2.7) arbeitet.
Weiterhin bringt TigerJython eine umfangreiche Dokumentation mit, die sehr gut für Unterrichtszwecke und zum Nachschlagen eingesetzt werden kann. Damit ist es möglich in recht kurzer Zeit die Programmiersprache Python zu erlernen und später in komplexeren Situationen oder anderen IDEs einzusetzen.
Ein weiterer Vorteil besteht darin, dass alle Schülerinnen und Schüler das gleiche Programm und somit Arbeitsmaterial zur Verfügung haben und sich damit auch mit den gleichen Gegebenheiten auseinandersetzen müssen. Dies ist durchaus mit einem Schulbuch vergleichbar, das ebenfalls Klassen- oder Kursübergreifend eingesetzt wird. Auf unseren PCs in 206 und 208 steht meist die aktuelle Version zur Verwendung bereit.
TigerJython ist frei verfügbar (kostenlos!) und kann nach der INstallation auf vielen Betriebssystemen sofort gestartet werden. MIttlerweile (Oktober 2017) werden vom Entwickler sogar Installer für Windows und Mac OSX (vgl. unten Punkt 4.) sowie für Linux bereitgestellt, die die notwendige Java-Runtime-Umgebung schon mitbringen. Das ist ein immenser Vorteil für den Einsatz in der Schule, denn somit kann jede Schülerin und jeder Schüler dieses Programm kostenfrei und problemlos zu Hause einsetzen, egal welches Betriebssystem dort vorhanden ist. Von der Entwicklerseite zitiert: "TigerJython ist eine einfache Entwicklungsumgebung für die Programmierung in Python. Sie enthält alle notwendigen Komponenten für das Programmieren, ist kostenlos und funktioniert unter Windows, MacOS und Linux. Die Distributionen verwenden ein plattformspezifisches eingebettetes Java Runtime Environment (JRE). Eine Vorinstallation der JRE ist daher nicht erforderlich. Es wird kein Java auf dem System installiert und eine bestehende Java-Installation wird nicht verändert."
- Im Kapitel 1.1 Einrichtung beim Online-Material Programmierkonzepte findest du eine kurze Einführung zu TigerJython und Hinweise zur Installation.
Zu beachten ist für eine erfolgreiche Installation und Inbetriebnahme:
- bei der Verwendung der Installer-Dateien sind folgende Ausführungen nicht mehr notwendigerweise zu beachten. Denn man hat jetzt die Wahl zwischen der Verwendung der JAR-Datei von TigerJython (einfachste Möglichkeit zum Einbinden ins Betriebssystem und Starten) und der Verwendung einer Installer-Datei.Beim Verwenden der JAR-Datei: Das Betriebssystem muss eine aktuelle Java-Runtime-Umgebung (link zu heise.de mit kurzer Erläuterung oder über die TigerJython-Entwickler) installiert haben. Diese ist normalerweise "von Hause aus" bei Windows (aktuelle Versionen) und Mac OS dabei und sollte immer aktuell gehalten werden.
- TigerJython ist eine sogenannte .jar Datei (Dateiendung .jar). Diese sind normalerweise nach der Installation der Java-Runtime mit dem Java-Interpreter verknüpft, so dass ein Doppelklick auf TigerJython.jar die Anwendung starten sollte. Bei Problemen kann eine erneute Installation der Java-Runtime vorgenommen werden.
- Die Python-Programmdateien mit der Dateiendung .py sind nicht mit TigerJython verknüpft. Das geht technisch nicht, da immer erst der Java-Interpreter gestartet werden muss und erst in diesem wird dann TigerJython gestartet. Deshalb müssen die Python-Dateien aus TigerJython heraus über das Menü geöffnet bzw. geladen werden. Hinweis: mit dem Windows-Installer scheint bei der Installation eine Verknüpfung mit den .py Dateien angelegt zu werden, so dass (jedenfalls unter WIndows) ein einfacher Doppelklick auf die .py Datei reicht um das verknüpfte TigerJython zu starten. Erkennbar ist dies am TigerJython-Symbol der .py Datei.
- Hinweis bei Verwendung der Installations DMG-Datei für Mac OSX (High Sierra und aufwärts): wie im Installer beschrieben muss die Datei unlock ausgeführt werden, damit Mac OSX auf den Ordner und das Programm TigerJython zugreifen kann.
Beim Verwenden der JAR-Datei - Vorgehen zum Starten und Benutzen von TigerJython
- Ist eine aktuelle Java-Runtime auf dem System installiert? Ein aktuelles OpenJDk inkl. Java-Runtime findet sich beispielsweise bei Eclipse-Adoptium. Bei der Versions-Angabe reicht momentan noch die Auswahl von 17-LTS. Nach Auswahl des eigenen Betriebsystems werden die Download-Pakete angezeigt. Für Windows werden Installer-Versionen (.msi), für Mac .pkg angeboten etc.
- Download der aktuellen TigerJython-Version. Der Entwickler, Tobias Kohn, veröffentlicht regelmäßig schon seit mehreren Jahren Updates.
- Die heruntergeladene Datei in einem Verzeichnis abspeichern, in dem der Benutzer auch Schreibrechte besitzt!
- Die heruntergeladene Datei tigerjython2.jar dort ausführen - mit einem Doppelklick (bei Problemen siehe oben bei beachten->Punkt 2).
Beim ersten Start von TigerJython
- Nach dem Start von TigerJython sollte die IDE-Oberfläche angezeigt werden.
- Zuerst die Konfiguration in TigerJython anpassen über Datei->Einstellungen (siehe Bildergalerie). Die Reiter Bibliotheken und Syntax bleiben unverändert. Tipp: Das TigerJython-Fenster vor Beenden maximieren, dann bleibt die Fenstergröße auch nach dem Neustart von TigerJython erhalten! TigerJython schließen und neu starten, damit die Einstellungen übernommen werden!
Tipp zum schnellen Vergrößern der Textdarstellung
- bei Präsentationen kann es sinnvoll sein, den angezeigten Quelltext kurz zu vergößern (oder zu verkleinern). Bevor man umständlich in den Einstellungen die Schriftgröße ändert, einfach die CTRL-Taste gedrückt halten und das Mausrad betätigen. Das funktioniert für jedes Editorfenster separat und setzt sich nach dem Beenden von TigerJython zurück (vgl. http://jython.tobiaskohn.ch/faq.html)
Benutzen des umfangreichen Unterrichtsmaterial und der Dokumentation
- Auf der Übersichtseite zur Dokumentation finden sich zur Zeit (Stand September 2017) drei verschieden gestaltete PDF-Unterrichtsmaterialien (im Anhang als direkter Download von unserer Seite):
- Neues Script vom August 2017
- "Altes" Script vom August 2016
- Script für Fortgeschrittene vom Mai 2017
- Alle Skripte sind außerordentlich gut zum Selbstudium geeignet! Allerdings werden wir immer nur auszugsweise die Scripte und Aufgaben daraus direkt im Unterricht bearbeiten und besprechen. Es ist allerdings wie bei der Benutzung eines Schulbuches sehr ratsam im Material herumzustöbern und Begriffe, die anderweitig näher erläutert werden, dort nachzuschlagen!
- Parallel zu den PDF-Materialien gibt es das Script Programmierkonzepte online. Hier werden sehr umfassend Beispiele und Konzepte aus den PDF-Scripten ergänzt und vertieft. Programmierkonzepte werden nach informatischen Themen geordnet vorgestellt. Ein immenser Vorteil dieser Online-Version (Online-Tutorial) besteht darin, dass Programmbeispiele einfach kopiert und in den TigerJython-Editor eingefügt werden können. So lassen sich die Beispiele besser und schneller nachvollziehen und Erweiterungen bei Aufgabenstellungen gut bearbeiten. Diese Online-Version werden wir ebenfalls zusätzlich oder parallel im Unterricht einsetzen. Weiterhin eignet sie sich sehr gut als Nachschlagewerk!
- Als letzte Materialressource gibt es ein etwas knapper gehaltenes Online-Tutorial, das sich gut als Referenz eignet, um einzelne Punkte nachzuschlagen und zu wiederholen.
Viel Spaß beim Lernen von Python und beim Arbeiten mit TigerJython!
Gute Online-Materialien zur Einführung, Nachschlagen, Üben und Weiterlernen
- Imperative Programmmierung mit Python (Link zu infschule)
- Python for Kids (deutsch)
- TigerJython - Programmierkonzepte (Link zum sehr umfassendem und ausgezeichnetem Online-Material von Jarka Arnold, Tobias Kohn, Aegidius Plüss)
- Jython - TigerJython (Tobias Kohn)
- Online-Kurs zu Python
- (OOP) Ein ergänzendes Tutorial zur Einführung in Klassen in Python 2 (!)
- Ergänzung zur Modularisierung (import)
- Umfassendes Online-Nachschlagewerk für Python 3(!) - Link zu [Rheinwerk Computing]Achtung: dieses Werk ist extrem umfangreich und sollte im Grunde nur als Nachschlagewerk genutzt werden. Es ist darauf zu achten, dass einige, sehr spezielle Dinge nur für Python 3 gelten. Grundsätzlich ein guter Einstieg ist allerdings die Liste der eingebauten Funktionen (von Python 3(!). Diese gilt im großen und ganzen auch für Python 2. In einem eigenen Kapitel werden die wichtigsten Unterschiede von Python 2 und Python 3 dargestellt.
- Es gibt mittlerweile zwei eingschränkte Zugänge zum TigerJython System, um damit in begrenzter Form auch online arbeiten zu können. Diese Zugänge können nicht alle Funktionen abdecken, die wir im Unterricht benutzen! Allerdings sind sie für ein Üben und Ausprobieren sehr nützlich, insbesondere, wenn gerade kein PC zur Verfügung steht. Eine (stabile) Internet-Verbindung ist dafür zwingend notwendig:
- WebTigerJython. Hervorragend ausgebauten Fehlermeldungen. Unterstützt das Modul Turtlegrafik. Ausgerichtet auf das Lehrmittel "Einfach Informatik". Entwickelt an der ETHZ.
- Python-Online mit dem zugehörigen Lernprogramm. Schlichte Benutzeroberfläche optimiert für Smartphones und Tablets. Unterstützt die Module Turtlegrafik, Datenbanken und Robotik mit Lego EV3, micro:bit, Calliope und Oxocard. Entwickelt auf Servern der PHBern.
Hinweise zu kleinen Fallstricken bei der Programmierung mit TigerJython und Python allgemein
Benennung von Variablen und Bezeichnern (z.B. Funktionsnamen) in Python allgemein
- In Python sollen Variablennamen und Funktionsnamen mit einem kleinbuchstaben beginnen
- In Python dürfen Variablennamen und Funktionsnamen keine Bindestriche oder Leerzeichen enthalten. Was besonders bei längeren Namen bzw. Bezeichnern aber zur besseren Lesbarkeit sinnvoll sein kann, ist
- der sogenannte CamelCase, Beispiel: meineVariable = "Hallo" oder diesIstEineLangerVariablenNameDerDurchDenCamelCaseBesserLesbarIst = 42
- oder der sogenannte snake_case, also die Verwendung des Unterstrichs im Namen, Beispiel: meine_variable = "Hallo"
Die print-Funktion in TigerJython und in Python 3
(Aus Jaka Arnold: https://www.tjgroup.ch/forum/app/index.php?thread/94-umlaute-in-input-dialogen/):Umlaute bereiten beim Programmieren oft Schwierigkeiten. Deswegen verwenden wir in TigerJython-Lernprogrammen in der Regel englische Bezeichner für Variablen und Funktionen. In den Eingabe-Dialogen wählt man aber häufig eine deutsche Beschriftung. Dazu zwei Beispiele:
Beispiel 1:
zahl = input("Gib eine Zahl grösser als 100 ein:")a = zahl // 21b = zahl / 21print a, b
Der Umlaut in der Eingabe wird jetzt falsch codiert dargestellt. Ausprobieren!
Beispiel 2:
zahl = input("Gib eine Zahl grösser als 100 ein:")a = zahl // 21b = zahl / 21print(a, b)
Der Unterschied zwischen den beiden Programmen besteht nur in der letzten Zeile. Unter Python 2.7 braucht eine print-Anweisung keine Klammer. Unter Python 3 ist diese Klammer notwendig, da hier print als Funktion aufgefasst wird. Die neueren TigerJython-Versionen verwenden automatisch die Print-Syntax von Python 3. Der Fehler beim print wird zwar abgefangen, das Programm funktioniert auch ohne Klammern, wenn aber gleichzeitig ein input-Befehl verwendet wird, muss print mit Klammer geschrieben werden!. Andernfalls werden die Umlaute im Dialog-Fenster nicht richtig angezeigt.
Da die TigerJython-Tutorials Tutorials ursprünglich für Python 2.7 entwickelt wurden, fehlt oft diese Klammer. Falls es Probleme mit den Umlauten gibt, müssen im print-Befehl Klammern verwendet werden.
HInweise zur Codierung von Umlauten (Fehler in der Darstellung)
Auf manchen Systemen kann es zu folgender Fehlermeldung beim Ausführen des Python-Programms kommen:
SyntaxError: Non-ASCII character in file '[hier wird Pfad und Name der Datei angezeigt]', but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
Dann in der betroffenen Datei ganz am Anfang folgende Zeile einfügen:
# -*- coding: utf-8 -*-
Das sieht zwar aus wie ein Kommentar, wird von Python in diesem Falle anders interpretiert. Somit können Umlaute in Kommentaren und Ausgaben dargestellt werden.
Anhang | Größe |
---|---|
pythonscript-einfuhrung-kurz-august2017.pdf | 1.1 MB |
pythonscript-einfuhrung-lang-august2016.pdf | 2.25 MB |
pythonscript-fortgeschrittene-mai2017.pdf | 599.45 KB |