Python-Kurs (Python-Kurs), Lektion, Seite 723750
https://www.purl.org/stefan_ram/pub/python-kurs (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
Python-Kurs

Die Anfangsgründe des Programmierens mit der Programmiersprache Python  (Python-Kurs)

Im Sommer 2020 wurde der Kurs überarbeitet, so daß ältere Angaben zu Inhalten und zum zeitlichen Ablauf nicht mehr genau mit dem Inhalt des Kurses übereinstimmen.

Dieser Kurs hier soll die Grundlagen des Programmierens und der Programmiersprache Python  behandeln.

Ein anderer Kurs, der alternative Python -Kurs Python leicht gemacht  (im Aufbau) behandelt Python  in vereinfachter  Weise und ist für Leser gedacht, die einen betont einfachen Einstieg suchen, bei dem weniger abstrakte Begriffe verwendet und behandelt werden, siehe: >724281Python leicht gemacht .

Dieser Kurs hier behandelt Python  auf eine anspruchsvollere Weise, bei der mehr Regeln, Grammatik, Hinweise zu gutem Programmierstil, technische Details  und abstrakte Begriffe  vorgestellt werden und mehr Dinge als Vorbereitung für spätere  Anwendungen vorgestellt werden, deren Nutzen nicht immer sofort erkennbar wird. Dennoch ist auch dieser Kurs hier immer noch einfacher als Kurse auf Hochschulniveau oder Kurse, die sich an erfahrene Programmierer oder an Teilnehmer mit überdurchschnittlich hohem Lerntempo richten.

Dieser Kurs behandelt Python 3.9, an einigen Stellen bezieht er sich noch auf ältere Versionen.

Die Grundlagen der Sprache sind erst einmal wie bei vielen anderen Programmiersprachen mehr oder weniger mühevoll zu erlernen – daran führt kein Weg vorbei! Etwas anspruchsvollere Programmieraufgaben lassen sich mit Python  dann jedoch leichter  erledigen als mit Sprachen wie Java  oder C++, und insofern ist Python  auch leichter erlernbar.

Der Anfang des Kurses enthält einige vortragslastige Teile, aber im weiteren Verlaufe des Kurses gibt es dann auch verschiedene Übungsaufgaben.

In diesem Kurs werden Windows -Grundkenntnisse vorausgesetzt. Kursteilnehmer mit  Windows -Grundkenntnissen werden gebeten, Kursteilnehmern ohne Windows -Kenntnissen zu helfen. Kursteilnehmer ohne  Windows-Kenntnisse werden gebeten, sich bei Bedarf aktiv Hilfe von Kursteilnehmern mit  Windows -Grundkenntnissen zu holen.

Trotzdem versucht dieser Kurs, möglichst viele Themen zu vermeiden, bei denen Windows-Kenntnisse benötigt werden, da diese erfahrungsgemäß bei vielen Teilnehmern nur gering ausgeprägt sind, und im einem Python -Kurs nicht Windows  unterrichtet werden kann. Um dies zu erreichen, werden beispielsweise alle Dateien im selben Verzeichnis angelegt und die Verwendung des Windows -Explorers und des Windows -Kommandointerpretierers soweit wie möglich vermieden. Diejenigen Kursteilnehmer, die Windows  als Betriebssystem verwenden, sollten sich aber außerhalb des Kurses dazu weiterbilden, da Python  mit guten Windows -Kenntnisse noch besser genutzt werden kann.

Lob der Wahl von Python 

Sie haben sich für die richtige Programmiersprache entschieden, da Python  so einfach und leistungsfähig ist, daß Sie diese Sprache auch praktisch anwenden können.

Bei anderen Sprache, wie Java  und erst recht C  oder C++, ist es nötig, viel länger zu lernen und die Anwendung ist oft viel schwieriger, so daß das Erlernen dieser Programmiersprachen oft nur Zeitverschwendung ist, weil viele gar nicht so weit kommen, so viel zu lernen, daß sie diese Sprachen praktisch anwenden können.

Selbst, wenn jemand vielleicht einmal Java , C  oder C++  erlernen will, ist es eine gute Idee, erst einmal mit Python  die Grundlagen der Programmierung kennenzulernen, weil es danach auch einfacher wird, eine andere Sprache zu erlernen.

Überblick des geplanten Kursinhaltes

Die folgende Übersicht gibt den geplanten Inhalt in groben Zügen wieder. Jedoch gehören einige der weiter hinten stehenden Themen schon zum Aufbaukurs.

Grundkurs: vorwiegend Ausdrücke sowie einfache Anweisungen (im Gegensatz zu Verbundanweisungen)

vorwiegend Ausdrücke:

vorwiegend Anweisungen:

(Planung) zukünftige Angaben (ab Sommer 2021) für Programmhefte / Teilnahmebescheinigungen – Grundkurs
Der Kurs behandelt Python 3.9 oder eine neuere Version.
Grundbegriffe – Programmiersprachen – Auswertungen – Informationsdarstellung mit Bits – Grammatiken mit Syntaxdiagrammen – Literale – Typen – Grundrechenarten – ganzzahlige Division – Modulo-Operation –Vergleichsoperatoren – logische Operationen – die from-Anweisung – "from" – "import" – Aufrufe und aufrufbare Objekte – "input" – "random" – "lambda" – Herstellung von Namensbindungen – Argumente – "len" – "print" – "str" – "repr" – "help" – "type" – "int" – "float" – "str" – "Decimal" – "bool" – "eval" – "literal_eval" – "ord" – "chr" – "lambda" – "issubclass" – "isinstance" – Tupel – "tuple" – Listen – "list" – Iteratoren – "next" – Iterable – "iter" – Bereiche – "range" – Attribute und Methoden – "join" – "split" – "map" – Sequenzen – "getitem" – "choice" – Indizierung mit eckigen Klammern – Zuordnungen – "dict" – Sortieren – "sorted" – Reduzieren – "reduce" – Mengen – "set" – Filtern – "filter" – Anweisungsfolgen – das Semikolon – Skripte – der Python-Editor IDLE - Graphiken mit einem simulierten Zeichenstift erstellen

(Aufbaukurs:)

Aufbaukurs: vorwiegend Verbundanweisungen

(Planung) zukünftige Angaben (ab Sommer 2021) für Programmhefte / Teilnahmebescheinigungen – Aufbaukurs
Der Kurs behandelt Python 3.9 oder eine neuere Version.
Nach Bedarf Wiederholung von Themen des Grundkurses – "def" – "return" – def-Parameter – Anlegen von Modulen – if-Ausdruck – if-Anweisung – "else" – "elif" – "while" – "try" – "except" – "for" – "with" – Generatoren – Klassendefinitionen

(Ende von Notizen zum Aufbaukurs:)

Nachdem der Kurs im Sommer 2020 überarbeitet wurde kann die zeitliche Verteilung der verschiedenen Themen auf die einzelnen Unterrichtstermine aber leider nicht so genau vorhergesagt werden, da noch Erfahrungswerte fehlen. Weil die Mitte des Kurses nun mehr Stoff und Übungen enthält werden die hinteren Themen aber voraussichtlich etwas kürzer ausfallen.

>723857 Lesehinweise

Grundkurs

Dieser Kurs wird seit 2017 aufgebaut. Im allgemeinen sind die Lektionen um so weniger  ausgearbeitet, je weiter hinten  sie stehen. Außerdem gibt es auch einige neu eingefügte  Lektionen, die ebenfalls noch weniger ausgearbeitet sind.

Im Sommer 2020 wurde der Kurs verändert, so daß einige Themen nun früher behandelt werden, weil dies schon früher die Behandlung interessanter Übungsaufgaben ermöglicht. Dadurch bleibt aber am Ende des Grundkurses nun weniger Zeit für die Behandlung der def-Anweisung und von Kontrollstrukturen - diese Themen werden deshalb im Aufbaukurs  vertieft werden.

Teil 0 Grundlagen

Kapitel 0 Erste Schritte

  Das H kennzeichnet eine Lektion, die hauptsächlich ein Hilfsmittel zur Programmierung behandelt, aber nicht die Programmiersprache selber.

Abschnitt 0 Python 

>724572 Lektion 0.0.0. Programmiersprachen: Syntax und Semantik
>724598 Lektion 0.0.1. Python  als Programmiersprache
>724270 Lektion 0.0.2. Ausdrücke ᵉ
>724691 Lektion 0.0.3. Auswertungen
Implementation, Inkarnation, Wert, Wirkung, Verhalten
>724600 Lektion 0.0.4. Die Standardimplementation von Python 
>724576 Lektion 0.0.5. Bibliotheken ᵉ
>724602 Lektion 0.0.6. Fundamentale Quellen zu Python 
>724710 Lektion 0.0.7. Der Name der Sprache Python  °
>724711 Lektion 0.0.8. Die Geschichte der Sprache Python  °
>723756 Lektion 0.0.9. Weitere Erklärungen zu Python  ³ 〈0〉 °

Abschnitt 1 Allgemeine Grundlagen °

>724669 Lektion 0.1.0. Namen einiger Schriftzeichen °

Abschnitt 2 Windows 

Dieser Kurs ist für alle Betriebssysteme  geeignet. Dieses Kapitel enthält jedoch einige Hinweise, die sich speziell an Windows -Benutzer richten. Wenn Sie ein anderes Betriebssystem verwenden, überspringen Sie dieses Kapitel und folgen Sie der Installations- und Startanleitung der von Ihnen verwendeten Python -Implementierung.

>724614 Lektion W-0 ℋ  – Die Eingabetaste ᵉ °
>724617 Lektion W-1 ℋ   ▲  – Die Richtungstasten ᵉ °
>724119 Lektion W-2 ℋ  (Windows -spezifisch) „Strg-V“ – Bezeichnungen für Tastaturbetätigungen ᵉ °
>724628 Lektion W-3 ℋ  (Windows -spezifisch) „Strg-A“ – Ausgewählte Tastenkombinationen unter Windows  ᵉ °
>724627 Lektion W-4 ℋ  (Windows -spezifisch) „Python 3.9 (64-bit) “ – Der Start der Python -Konsole unter Windows 
>724626 Lektion W-5 ℋ  (Windows -spezifisch) Die Konfiguration der Einstellungen der Zwischenablage der Konsole von Windows 
>724654 Lektion W-6 Der QuickEdit -Modus ᵉ °
>724667 Lektion W-7 Die Konfiguration der Ausmaße der Konsole von Windows  °
>723882 Lektion W-8 ℋ  (Windows -spezifisch) Konsolen-Grundlagen für Programmierkurse ⁶

Abschnitt 3 Die Verwendung der Python -Konsole

>724166 Lektion 0.3.0. Die Nutzung der Python -Konsole ⁶

Abschnitt 4 Einige weitere Grundbegriffe

>724687 Lektion 0.4.1. Systeme und ihre Zustände ᵉ
>724272 Lektion 0.4.2. Objekte in Python 
>724275 Lektion 0.4.3. Textdarstellungen von Python -Objekten ᵉ
Auswertung eines Ausdrucks mit nachfolgender Textdarstellung des erhaltenen Objekts
                   Auswertung               Textdarstellung
Ausdruck --------------------> Objekt ---------------------> Textdarstellung
>724680 Lektion 0.4.4. Programmieren ᵉ

Abschnitt 5 Daten °

>724701 Lektion 0.5.0. Informationsdarstellung mit einem Bit °
>724702 Lektion 0.5.1. Informationsdarstellung mit mehreren  Bits °
>724342 Lektion 0.5.2. Die Interpretation von Bitmustern °

Abschnitt 6 Aufbaudiagramme °

Dieses Kapitel behandelt Diagramme zur Beschreibung von Textmengen. Solche Diagramme sind nicht  speziell mit der Programmiersprache Python verbunden. Sie werden allgemein immer dann eingesetzt, wenn es gilt, bestimmte Textmengen zu beschreiben.

>724399 Lektion 0.0. f »( A )« – Terminalsymbole ᵉ °
>724402 Lektion 0.1. »A« – Kategorien ᵉ °
>724400 Lektion 0.2. »| A |« – Nichtterminalsymbole ᵉ °
>724640 Lektion 0.3. »| ein Zeichen |« – Vage Kategorien ᵉ °
>724401 Lektion 0.4. ».« – Verzweigungen ᵉ °

Teil 1 Ausdrücke in Python 

Hier beginnt nun der systematische Aufbau der Sprache beginnend bei den einfachsten Ausdrücken, den Literalen.

Kapitel 1 Literale

>724645 Lektion 1.0. Der Aufbau von Zeichenfolgenliteralen in Python 
>723757 Lektion 1.1. Zeichenfolgenliterale in Python 
>723761 Lektion 1.2. Refaktoren in Python 
>723758 Lektion 1.3. »123« – Dezimalnumeralia in Python 
>724212 Lektion 1.4. »0xFF« – Hexadezimalnumeralia in Python  °
>723760 Lektion 1.5. »8.3« – Nachkommastellen in Python 

Kapitel 2 Typen

>723762 Lektion 2.0. »int« – Klassen in Python 

Kapitel 3 Das Einklammern »(« »)«

>724519 Lektion 3.0. »(« »)« – Das Einklammern in Python 
>724107 Lektion 3.1. Operatoren und Operanden in Python 
>723764 Lektion 3.2. Lexikalische Einheiten und Leerraum in Python 
>724512 Lektion 3.3. Syntaxdiagramme

Kapitel 4 Das Potenzieren »**«

>723763 Lektion 4.0. »**« – Das Potenzieren in Python 
>723800 Lektion 4.1. Typanforderungen in Python 
>723876 Lektion 4.2. Typregeln von Operatoren in Python 
>724517 Lektion 4.3. Verschachtelungen in Python 

Kapitel 5 Weitere Operatoren

Kurzzusammenfassung dieses Kapitels Bei den Grundrechenarten ist in Python, abgesehen von wenigen Ausnahmen, eigentlich alles so, wie man es auch in der Schule gelernt hat („Punktrechnung geht vor Strichrechnung“ und so weiter).

>723884 Lektion 5.0. »-« – Vorzeichen in Python 
>724518 Lektion 5.1. Die Syntax des Vorzeichenoperators in Python  ʸ ⃗⃗
>724722 Lektion 5.2. Das Wichtigste über die Grundrechenarten in Python  in Kürze ⃖ 2 ÜA
>723868 Lektion 5.3. »/« – Die Division in Python 
>723880 Lektion 5.4. »*« – Die Multiplikation in Python 
>723883 Lektion 5.5. »*« – Die Zeichenfolgenvervielfachung in Python 
>724520 Lektion 5.6. »*« – Die Syntax multiplikativer Ausdrücke in Python  ʸ ⃗⃗
>724106 Lektion 5.7. »//« – Die ganzzahlige Division in Python  ⃖ 1 ÜA
>723869 Lektion 5.8. »%« – Der Divisionrest in Python  ⃖ 4 ÜA

[#0: „Tag 0, Block 0“]

>723874 Lektion 5.9. »+« – Die Addition in Python 
>723877 Lektion 5.10. »+« – Die Zeichenfolgenverbindung in Python 
>723879 Lektion 5.11. »-« – Die Subtraktion in Python 
>724521 Lektion 5.12. »+« – Die Syntax additiver Ausdrücke in Python  ʸ ⃗⃗

Kapitel 6 Namen

>723893 Lektion 6.0. »credits« – Namen in Python 
>724151 Lektion 6.1. »None« – Drei spezielle Namen von Python 

Kapitel 7 Vergleichsoperatoren

>724048 Lektion 7.0. »==« – Der Wertevergleich in Python 
>724049 Lektion 7.1. »is« – Der Objektvergleich in Python 
>724724 Lektion 7.2. .Werte von Objekten in Python 
>724014 Lektion 7.3. »!=« – Ungleichheitsaussagen für Werte in Python 
>724017 Lektion 7.4. »<« – Der Kleiner-Operator in Python 
>724019 Lektion 7.5. »>« – Der Größer-Operator in Python 
>724018 Lektion 7.6. »<=« – Der Kleinergleich-Operator in Python 
>724020 Lektion 7.7. »>=« – Der Größergleich-Operator in Python 
>724114 Lektion 7.0. »in« – Der Operator »in« in Python 
>724023 Lektion 7.1. »not« – Die Verneinung in Python 
>724024 Lektion 7.2. »and« – Die Und-Verknüpfung in Python 
>724025 Lektion 7.3. »or« – Die Oder-Verknüpfung in Python 

Kapitel 8 Anweisungen

In diesem Teil des Kurses sollen Ausdrücke  im Vordergrund stehen. Wir werfen jedoch in diesem und dem nächsten Kapitel einen Blick auf einige besonders wichtige Anweisung, die wir schon früh im Kurs benötigen.

>724214 Lektion 8.0. Die Auswertungsanweisung in Python 

Kapitel 9 Durch Auswertungen bewirkte Änderungen

„Lernt coden und verändert die Welt.“ – Andera Gadeib

Rückblende Bereits am Anfang des Kurses wurden die Begriffe „Wert“ und „Änderung“ kurz vorgestellt.

>724215 Lektion 9.0. »_« – Die Grundstrichvariable der Konsole in Python 
>723902 Lektion 9.1. »from« – Die from-Importanweisung in Python 
>724358 Lektion 9.2. Die Reihenfolge des Eintritts von Änderungen in Python 
>724216 Lektion 9.3. Bibliotheksfähiger Code 
>724077 Lektion 9.4. »from … import *« – Vollständige Importanweisungen in Python 

Kapitel 10 Aufrufe

>723901 Lektion 10.0. »()« – Aufrufe in Python 

Ein „ℬ “ kennzeichnet Lektionen, die sich hauptsächlich mit bestimmten Namen aus einer Bibliothek  und nicht mit der eigentlichen Programmiersprache Python  beschäftigen.

>724042 Lektion 10.1. ℬ  »input« – Wirkauswertungen in Python 
>724217 Lektion 10.2. ℬ  »random« – Zufallszahlen in Python
>723903 Lektion 10.3. F Verschachtelungen: »2 * random()« – Aufrufausdrücke in Operatorausdrücken in Python 
>724374 Lektion 10.4. A Verschachtelungen: »2 * input()« – Die Verarbeitung von Benutzereingaben in Python 

☼ Highlight Verarbeitung von Benutzereingaben

>724032 Lektion 10.5. »lambda:« – lambda-Ausdrücke in Python 

Kapitel 11 Die Bindungsanweisung

>723894 Lektion 11.0. »credits« – Bezeichner in Python 
>724072 Lektion 11.1. Schlüsselwörter in Python 
gewöhnliche Bezeichner
>723908 Lektion 11.2. »=« – Die einfache Bindungsanweisung in Python 
>723864 Lektion 11.3. Kommentare in Python 
>723970 Lektion 11.4. »del« – Die Entbindungsanweisung in Python 
>724054 Lektion 11.5. »+=« – Die erweiterten Bindungsanweisungen in Python 
>723975 Lektion 11.6. A »= lambda« – lambda-Ausdrücke und Bindungen in Python 

[#1: „Tag 0, Block 1“]

Kapitel 12 Argumente

Abschnitt 0 Einfache Argumente

>723904 Lektion 12.0.0. Argumente in Python 
>724528 Lektion 12.0.1. Verschachtelungen: Aufrufe in Aufrufen in Python 
>723960 Lektion 12.0.2. ℬ  Die Funktion ›len‹ in Python 
>723981 Lektion 12.0.3. ℬ  »print( 2 )« – Die Wirkfunktion »print« in Python 
>723955 Lektion 12.0.4. ℬ  Die Funktoren »str« und »repr« in Python 
>724380 Lektion 12.0.5. Werte und Änderungen in Python 
>724045 Lektion 12.0.6. »= random« – Bindungen und Standardnamen in Python 
>723905 Lektion 12.0.7. ℬ  A »help( random )« – Die Dokumentation in Python 
>723962 Lektion 12.0.8. ℬ  Variadische Funktoren in Python 
>723949 Lektion 12.0.9. ℬ  »type« – Einige aufrufbare Objekte zur Introspektion in Python 
>724055 Lektion 12.0.10. Anmerkungen zur Bindungsanweisung in Python 
>723950 Lektion 12.0.11. ℬ  Die aufrufbare Klasse ›int‹ in Python 

☼ Highlight Verarbeitung von Benutzereingaben mit Berechnungen

>723951 Lektion 12.0.12. ℬ  Die aufrufbare Klasse ›float‹ in Python 
>723953 Lektion 12.0.13. ℬ  Die aufrufbare Klasse ›str‹ in Python 
>723954 Lektion 12.0.14. ℬ  Die aufrufbare Klasse ›Decimal‹ in Python  °
>723952 Lektion 12.0.15. ℬ  Die aufrufbare Klasse ›bool‹ in Python 
>724346 Lektion 12.0.16. ℬ  Aufrufbare Klassen in Python  kurz gefaßt
>724076 Lektion 12.0.17. »import« – Modulnamenimportanweisungen in Python 
>723956 Lektion 12.0.18. ℬ  Die Funktion ›eval‹ in Python  °
>724219 Lektion 12.0.19. ℬ  Die Funktion ›literal_eval‹ in Python  °
>723958 Lektion 12.0.20. ℬ  Die Funktionen ›ord‹ und ›chr‹ in Python 

[#2: „Tag 1, Block 0“]

>723963 Lektion 12.0.21. lambda-Parameter in Python 
>724754 Lektion 12.0.22. Ergänzungen zu lambda-Parametern in Python 

Abschnitt 1 Mehrfache Argumente

>723906 Lektion 12.1.0. A Aufrufe mit mehreren  Argumenten in Python 

Hinweis für den Dozenten  ► Lernergebnis (Doku)?

[#3: „Tag 1, Block 1“]

>724636 Lektion 12.1.1. Kennwortargumente in Python 
>723947 Lektion 12.1.2. ℬ  Die Funktion »issubclass« in Python  °
>724037 Lektion 12.1.3. ℬ  Die Funktion »isinstance« in Python  °
>723969 Lektion 12.1.4. lambda-Ausdrücke mit mehreren Parametern in Python 

Kapitel 13 Zusammenfassungen von Objekten

Abschnitt 0 Tupel

>724588 Lektion 13.0.0. ℬ  »tuple« – Tupel in Python 
>724589 Lektion 13.0.1. ℬ  Die aufrufbare Klasse ›tuple‹ in Python 
>724704 Lektion 13.0.2. »,« – Schreibweisen für Tupel in Python 
>724738 Lektion 13.0.3. Entpackungen in Python 

Abschnitt 1 Listen

>724587 Lektion 13.1.0. »list« – Listen in Python 
>724705 Lektion 13.1.1. »[]« – Schreibweisen für Listen in Python 
>724596 Lektion 13.1.2. »pprint« – Übersichtliche Ausgaben mit Python  ⁿ°

Abschnitt 2 Iteratoren

>724726 Lektion 13.2.0. Untermodule in Python  ⁿ °
>723971 Lektion 13.2.1. ℬ  »next« – Iteratoren in Python 
>724579 Lektion 13.2.2. ℬ  »iter« – Iterable in Python 

[#4: „Tag 2, Block 0“]

>724712 Lektion 13.2.3. Zuweisungen mit der Tupelschreibweise

Abschnitt 3 Bereiche

>724582 Lektion 13.3.0. ℬ  range-Objekte in Python 
Einbeziehung der Null
>724585 Lektion 13.3.1. ℬ  »sum« – Summieren Iterabler in Python 

Abschnitt 4 Attribute

>723968 Lektion 13.4.0. ℬ  »getattr« – Attribute in Python 
>724703 Lektion 13.4.1. ».« – Attributausdrücke in Python 
>724676 Lektion 13.4.2. Methoden in Python 
>724715 Lektion 13.4.3. Die str.join-Methode in Python 
>724709 Lektion 13.4.4. Die str.split-Methode in Python 

Abschnitt 5 Map

>724584 Lektion 13.5.0. »map« – Aufrufbare auf Iterable verteilen ⁿ

[#5: „Tag 2, Block 1“]

Abschnitt 6 Sequenzen

>724115 Lektion 13.6.0. ℬ  »getitem« – Sequenzen in Python 
>724706 Lektion 13.6.1. »[]« – Die Indizierung in Python 
>724707 Lektion 13.6.2. »[:]« – Auswahlen in Python 
>723996 Lektion 13.6.3. Änderungen von Listen in Python 
>724720 Lektion 13.6.4. Der Produkteffekt in Python  °
>724717 Lektion 13.6.5. ℬ  »id« – Objektkennungen in Python
>724721 Lektion 13.6.6. »shuffle« – Mischen in Python  – 7 ÜA °

Abschnitt 7 Zuordnungen

>724595 Lektion 13.7.0. »{:}« – Zuordnungen in Python 
>724592 Lektion 13.7.1. ℬ  »Counter« – Statistik Iterabler mit Python  ⁿ °

Abschnitt 8 Ergänzungen

>724586 Lektion 13.8.0. ℬ  »sorted« – Sortieren Iterabler in Python  ⁿ °
>723965 Lektion 13.8.1. Wiederholbare Argumente in Python 
>724220 Lektion 13.8.2. Extrema in Python 
>724597 Lektion 13.8.3. »reduce« – Reduzieren Iterabler mit Python 

Abschnitt 9 Mengen

>724708 Lektion 13.9.0. »{0}« – Schreibweisen für Mengen in Python 
>724273 Lektion 13.9.1. Werte von Objekten in Python 

Abschnitt 10 Filtern

>724581 Lektion 13.10.0. ›filter‹ – Filtern mit Python 

Kapitel 14 Mehr über Zeichenfolgenliterale

>724719 Lektion 14.0. »\n« – Ersatzdarstellungen in Zeichenfolgenliteralen in Python 
>724223 Lektion 14.1. »r'\n'« – Rohe Zeichenfolgenliterale in Python 
>723887 Lektion 14.2. »f'x'« – Formatierende Zeichenfolgenliterale in Python 
>723948 Lektion 14.3. »'''« – Mehrzeilige Zeichenfolgenliterale in Python 
>724221 Lektion 14.4. Die Verbindung von Zeichenfolgenliteralen in Python  °
>724718 Lektion 14.5. »b'x'« – Oktette in Python  °

[#6: „Tag 3, Block 0“]

Kapitel 15 Anweisungsfolgen

>723979 Lektion 15.0. »;« – Anweisungsfolgen in Python 
>724222 Lektion 15.1. Eingabenamen in Python 
>723982 Lektion 15.2. »pass« – Die Anweisung »pass« in Python 
>723966 Lektion 15.3. a »end=''« – Mehr über Kennwortargumente in Python 
>724235 Lektion 15.4. »exec« – Die Ausführung von Zeichenfolgen in Python 
>723978 Lektion 15.5. lambda-Ausdrücke zur Bestimmung des Zeitpunktes in Python 

Kapitel 16 Skripte

>724075 Lektion 16.0. ℋ  IDLE  in Python 
>724237 Lektion 16.1. Das Dialogfenster von IDLE 
>724236 Lektion 16.2. Das Skriptfenster von IDLE 
>724238 Lektion 16.3. A Skripte ⃖

Kapitel 17 Schildkröten

>723976 Lektion 17.0. ℬ  »reset« – Schildkröten in Python 
>724074 Lektion 17.1. ℬ  A »forward( 9 )« – Bewegungen von Schildkröten in Python 
>724240 Lektion 17.2. ℬ  »bgcolor(1,0,0)« – Farbangaben in Python 
>724080 Lektion 17.3. ℬ  A »begin_fill« – Flächenfärbung in Python 

☼ Highlight Zeichnen von Flaggen

>724285 Lektion 17.4. ℬ  »write« – Textausgabe mit Schildkröten in Python 

Die weiter oben stehenden Lektionen wurden überarbeitet, die folgenden Lektionen noch nicht. Daher sind die Lektionen ab hier nun teilweise noch weniger ausgearbeitet. Sie enthalten teilweise weniger erklärende Texte. Teilweise unterscheiden sie sich in einigen Aspekten, so bei der Formatierung, bei der Notation, bei der vorausgesetzten Kenntnissen, bei der Verwendung von Aufbaudiagrammen  oder bei Verwendung bestimmter Begriffe.

>724332 Lektion 17.5. Benutzereingaben mit der Schildkrötenbibliothek in Python °
>724239 Lektion 17.6. Anmerkungen zu Skript-Dateien in Python 
>724445 Lektion 17.7. Muster von Bindungen in Python  °

Kapitel 18 Reguläre Ausdrücke ⃗

Dieses Kapitel zu regulären Ausdrücken befindet sich im Aufbau und umfaßt derzeit erst einen Teil des geplanten Umfangs.

>724608 Lektion 18.0. Textsuchen in Python  ⁿ ⃗ °

[#7: „Tag 3, Block 1“]

Teil 2 Verbundanweisungen

Kapitel 19 Definitionsanweisungen

Motivation Der größte Teil der meisten größeren Python -Bibliotheken und -Programme besteht aus def-Anweisungen.

>723912 Lektion 19.0. »def« – A Funktionsdefinitionen in Python 
>724059 Lektion 19.1. A Anmerkungen zu Funktionsdefinitionen in Python 
>723913 Lektion 19.2. Variablen und Funktionsdefinitionen in Python 

Kapitel 20 Wertrückgaben in Funktionsdefinitionen

>723914 Lektion 20.0. »return« – Rückgaben in Python 
>724061 Lektion 20.1. A Zu Rückgaben in Python 

Kapitel 21 Parameter in Funktionsdefinitionen

>723915 Lektion 21.0. Parametrisierung in Python 
>724062 Lektion 21.1. A A Zur Parametrisierung in Python 
>724008 Lektion 21.2. Mehrfache Parameter in Python 
>724009 Lektion 21.3. Fehlwerte in Python 
>724012 Lektion 21.4. Dokumentation in Python  °
>724013 Lektion 21.5. Einschlüsse in Python 
>724067 Lektion 21.6. Dekorateure in Python 
>724081 Lektion 21.7. Tastaturereignisse in Python 
>724068 Lektion 21.8. Tonausgabe mit Python  unter Windows 
>724057 Lektion 21.9. »script.py« – Das Erstellen von Modulen in Python  °
>724007 Lektion 21.10. Module mit Funktionsdefinitionen in Python  anlegen
>724729 Lektion 21.11. Empfehlung zur Verwendung von Funktionen in Python 

[#8: „Tag 5, Block 0“]

Kapitel 22 Der if-Ausdruck °

Der if-Ausdruck ist keine  Verbundanweisung. Er wird aber trotzdem im Teil „Verbundanweisungen “ behandelt, da er von seiner Semantik her gut zu der weiter unten behandelten if-Anweisung paßt.

>723952 Wiederholung der Lektion 12.0.15. Das aufrufbare Objekt »bool« in Python 
>724048 Wiederholung der Lektion 7.0. »==« – Der Wertevergleich in Python 
>724063 Lektion 22.12. Die Syntax des if-Ausdrucks in Python 
>723918 Lektion 22.13. Die Semantik des if-Ausdrucks in Python 
>724058 Lektion 22.14. Zum if-Ausdruck in Python 
>724086 Lektion 22.15. Verschachtelungen: Der if-Ausdruck in Funktionsdefinitionen in Python 
>724379 Lektion 22.16. Rekursion in Python 
>724087 Lektion 22.17. Verschachtelungen: Der if-Ausdruck in if-Ausdrücken in Python 
>724526 Lektion 22.18. Anmerkungen zum if-Ausdruck in Python 

Kapitel 23 Die if-Anweisung

Hinweis für den Dozenten  ► Alternative Kurzlektion folgt weiter unten.

>724065 Lektion 23.0. Die Syntax der if-Anweisung in Python 
>723919 Lektion 23.1. Die if-Anweisung in Python 
>724527 Lektion 23.2. Anwendungsbeispiele zur if-Anweisung in Python 
>724085 Lektion 23.3. Verschachtelungen: if-Anweisungen in Funktionsdefinitionen in Python 
>724089 Lektion 23.4. »else« – Die else-Klausel in Python 
>724090 Lektion 23.5. »elif« – Die elif-Klausel in Python 
>724088 Lektion 23.6. Verschachtelungen: if-Anweisungen in if-Anweisungen in Python 
>724647 Lektion 23.7. Animationen mit Python 
>724091 Lektion 23.8. Rekursive Schildkröten und Klänge in Python 
>724525 Lektion 23.9. Anmerkungen zur if-Anweisung in Python 

Kapitel 24 Die while-Schleife

Hinweis für den Dozenten  ► Hinweis für Dozenten Am Ende des Grundkurses keinen „Ausblick“ geben, statt dessen Themenwünsche behandeln und sonst den Kurs normal weiterführen (falls noch Zeit dafür ist)!

>724064 Lektion 24.0. »while« – Die Syntax der while-Schleife in Python 
>723920 Lektion 24.1. A A »while« – Die while-Schleife in Python 
>724728 Lektion 24.2. Alternative Kurzlektion zu »while« und »if«

[#9: „Tag 5, Block 1“]

Aufbaukurs I

Da die Python -Grundkurse unterschiedlich lange dauern (von 21 bis 40 UE), kann leider keine Stelle für den Beginn des Aufbaukurses festgelegt werden, die für alle Teilnehmer eines Grundkurses Überschneidungen und/oder Lücken vermeidet. So wurde hier willkürlich  eine bestimmte Stelle festgelegt.

Wer in einem Grundkurs war, der so kurz war, daß diese Stelle dort nicht  erreicht wurde, muß entweder noch einmal in eine längeren Grundkurs gehen oder die Lektionen bis hier noch im Selbststudium durcharbeiten.

Wer in einem Grundkurs war, der so lang war, daß diese Stelle dort überschritten  wurde, muß dann in einem Aufbaukurs einiges hören, das er schon aus dem Grundkurs kennt.

In Aufbaukursen kann an dieser Stelle ein kurzer Rückblick auf den Grundkurs  gegeben werden. Er sollte aber nicht mehr als 10 Prozent der Zeit des Aufbaukurses umfassen.

 

Dieser Aufbaukurs befindet sich derzeit erst im Aufbau, die einzelnen Lektionen sind meist noch nicht so ausformuliert und in ihrer Reihenfolge aufeinander abgestimmt wie die Lektionen des Grundkurses!

Aus der Kursbeschreibung im Programmheft (Stand 2020-11-01)
► Umfrage zu Themenwünschen ✔
► aus der Kursbeschreibung (0) Wiederholung einiger Themen aus dem Grundkurs ✔
► aus der Kursbeschreibung (1) try ✔
► aus der Kursbeschreibung (2) except ✔
► aus der Kursbeschreibung (3) for ✔
► aus der Kursbeschreibung (4) Generatoren
► aus der Kursbeschreibung (5) Modulo
► aus der Kursbeschreibung (6) Attributreferenzen
► aus der Kursbeschreibung (7) Dateizugriffe
► aus der Kursbeschreibung (8) with
► aus der Kursbeschreibung (9) Web-Zugriffe
► aus der Kursbeschreibung (10) Textanalysen
► aus der Kursbeschreibung (11) Klassen
► Behandlung von Themenwünschen
► Behandlung der Notizen mit daraus abgeleiteten Übungen
► Umfrage zu Themenwünschen ✔

 

 

► Umfrage zu Themenwünschen (hier)

 

 

>724737 Lektion 24.3. Wiederholungen aus dem Grundkurs
► aus der Kursbeschreibung (0) Wiederholung einiger Themen aus dem Grundkurs ✔

 

 

Kapitel 25 Die while-Schleife (Fortsetzung)

Hinweis für den Dozenten  ► Für die Behandlung der for-Schleife werden ab hier mindestens 90 Minuten benötigt!

>724092 Lektion 25.0. F A »break« – Die break-Anweisung in Python 
>724102 Lektion 25.1. F »else« – Die while-else-Klausel in Python 

Bis hier wurden die Lektionen dieses Aufbaukurses 2020 überarbeitet. Die ab hier folgenden Lektionen könnnten teilweise noch weniger ausgearbeitet sein.

>724069 Lektion 25.2. Verschachtelungen: Verschachtelte Schleifen in Python  ᵊ⃗
>724093 Lektion 25.3. Schildkröten und Schleifen in Python 
>724137 Lektion 25.4. Töne und Schleifen in Python 

Kapitel 26 Laufzeitfehler

>724104 Lektion 26.0. »try« – F A Laufzeitfehler in Python 
► aus der Kursbeschreibung (1) try ✔
► aus der Kursbeschreibung (2) except ✔

Kapitel 27 Iterable

Die folgenden Lektionen (in allen folgenden Kapiteln) sind noch nicht ausgearbeitete Entwürfe, die noch nicht aufeinander abgestimmt wurden. Ab hier weist der Kurs noch viele Mängel auf!

>723972 Lektion 27.1. »iter« – F A Iterable in Python  (Fortsetzung 1)
>723916 Lektion 27.2. »for« – Die for-Anweisung in Python 
► aus der Kursbeschreibung (3) for ✔

Kapitel 28 Die Backus-Naur-Form

>724303 Lektion 28.0. Die Backus-Naur-Form
>724328 Lektion 28.1. Die EBNF der PLR

Kapitel 29 Die Annahme

>724016 Lektion 29.0. »assert« – Annahmen in Python 

Kapitel 30 Generatoren

>724738 Wiederholung Entpackungen in Python 
>724027 Lektion 30.0. Generatorausdrücke in Python 
>724739 Lektion 30.1. Listenbildungen
>723928 Lektion 30.2. »yield« – Generatorfunktionen in Python 
► aus der Kursbeschreibung (4) Generatoren
>723869 Wiederholung »%« – Der Divisionrest in Python  ⃖ 4 ÜA
► aus der Kursbeschreibung (5) Modulo
>720899 Lektion 30.3. Lektion Übungsaufgaben zu Schleifen
>724703 Wiederholung ».« – Attributausdrücke in Python 
► aus der Kursbeschreibung (6) Attributreferenzen

Kapitel 31 Zugriffe auf externe Daten

>724740 Lektion 31.0. Dateizugriffe mit Python
► aus der Kursbeschreibung (7) Dateizugriffe
>724741 Lektion 31.1. finally in Python 
>724742 Lektion 31.2. with in Python 
► aus der Kursbeschreibung (8) with
>724746 Lektion 31.3. Mehr zu Dateien in Python 
>724743 Lektion 31.4. Internetzugriffe mit Python 
► aus der Kursbeschreibung (9) Web-Zugriffe
>724744 Lektion 31.5. Textanalysen mit Python 
► aus der Kursbeschreibung (10) Textanalysen

Kapitel 32 Graphische Benutzeroberflächen

>724753 Lektion 32.0. tkinter  in Python 

Kapitel 33 Definition von Klassen

>724745 Lektion 33.0. Klassendefinitionen in Python 
>724747 Lektion 33.1. Die Ausführung von Klassendefinitionen in Python 
>724752 Lektion 33.2. Methoden für Objekte
>724748 Lektion 33.3. Felder und ihre Initialisierung
>724749 Lektion 33.4. Die magische __str__-Methode
>724750 Lektion 33.5. Die magische __bool__-Methode
>723766 Lektion 33.6. Die magische __del__-Methode
>724751 Lektion 33.7. Das Iterator-Protokoll
Lektion Properties
► aus der Kursbeschreibung (11) Klassen
► Behandlung von Themenwünschen
► Behandlung der Notizen mit daraus abgeleiteten Übungen

Die folgenden Lektionen sind noch nicht ausgearbeitete Entwürfe, die thematisch noch nicht immer aufeinander abgestimmt wurden.

- regular expressions

- grep von Zeilen

- Suche nach Wortmustern (wie bei ensch)

- Installation von Zusatzmodulen

- conf-Dateien mit JSON

Weitere mögliche Themen für den Aufbaukurs

- Erklärung des chat-Programms

- Vokabeltrainer

- SQL-Zugriffe

- Web

- automatischer Download durchnumerierter Dateien (hoellroah/zita/home/).at

- automatischer Download von Links in einer Seite

- Webzugriffe aus "aktuelles"

- Notes

- Aufgabe zu srt mit beliebig langen Texten

- Parser schreiben

- Was ist OOP?

- tkinter

- namedtuple

- defaultdict

- Microbenchmarks

- CSV-Zugriffe

- Transkodieren

- Weiterlernen

- ÜA zu Untertiteln variabler Länge

Anhang

Teil 3 Notizen

Kapitel 34 Notizen zu tkinter

>724029 Notiz tkinter  in Python 
>724736 Notiz Notizen zu tkinter  in Python 

Notizen

Die folgenden Notizen sind noch nicht so ausformuliert, daß sie gut lesbar sind.

Kapitel 35 Notizen zum Internet

>724299 Notiz Web-Scraping in Python 
>724404 Notiz Die Internet -Verbindung von Python 

Kapitel 36 Sonstige weitere Notizen

>724039 Notiz Umfrage zum Kurs
>723935 Notiz Python -Glossar
>724035 Notiz Python  Cheat Sheet 
>724097 Notiz Zu Python  unter Windows 
>723892 Notiz Funktoren in Python 
>723889 Notiz Dateiverarbeitung in Python 
Counter
>723931 Notiz Verzeichniszugriffe in Python
>723898 Notiz mbox -Analyse in Python 
>723899 Notiz Quelldateien in Python 
>723922 Notiz Microbenchmarks mit Python 
>723923 Notiz Software für Python 
>724034 Notiz Laufzeit-Auswertung in Python 
>724038 Notiz Disassemblieren in Python 
>724083 Notiz Laufzeiteffizientes Python 
>724101 Notiz Ein einfacher Makroprozessor in Python 
>724117 Notiz Reguläre Ausdrück in Python 
>724120 Notiz Scheiben in Python 
>724148 Notiz Transkodieren in Python 
>724192 Notiz Aktuelles zu Python 
>724193 Notiz Quellen zu Python 
>724060 Notiz English-Language Resources for Python 
>724228 Notiz Lesen aus CSV -Dateien mit Python 
>724433 Notiz Schreiben in CSV -Dateien mit Python 
>724241 Notiz Installation von Bibliotheken und Bibliotheken für Python 
>724314 Notiz Python 2  in Python 
>724329 Notiz Metaklassen in Python 
>724350 Notiz Weiterlernen nach dem Ende eines Programmierkurses
>724113 Notiz Python  in Berlin 
>724405 Notiz Automatisierung mit Python 
>724406 Notiz Enums in Python 
>724412 Notiz SQLite  in Python 
>724413 Notiz Ein Vokabelprogramm in Python 
>724429 Notiz Sprachuntersuchungen und Sonstiges mit Python 
>724568 Notiz Das Modul »slr«
Counter
>724643 Notiz Excel -Programmierung mit Python 
>724756 Notiz Windows -Programmierung mit Python 
>724723 Notiz Ein Chat in Python 
>724755 Notiz Ein Lüftungsprogramm in Python 

Sonstiges

>724551 Zitate zur Python -Programmierung (Anaconda )
>724611 Stilregeln für Python

Teil 4 FAQs

Hier werden Fragen beantwortet, die in einem Kurs von Kursteilnehmern gestellt wurden.

Kapitel 37 FAQs zu Python

>724541 Was ist objektorientierte Programmierung?
>724727 Warum lambda?

Kapitel 38 Sonstige FAQs

>724258 Notiz FAQ zu Python 

Teil 5 Sonstiges

>723921 Danksagungen ⃗

Spickzettel

Hier werden verschiedene Art von Ausdrücken, Anweisungen und Standardnamen in einer informellen  Notation als Gedächtnisstütze notiert. “Informell” bedeutet, daß es keine feste Regel zur Interpretation der einzelnen Angaben gibt. Es wird aber gehofft, daß diese als Gedächtnisstütze trotzdem manchmal hilfreich sind.

Dieser Spickzettel ist erst im Aufbau. Derzeit ist er noch viel zu klein, um nützlich zu sein! (Stand 2020)

¦ Zeilenanfang (gefolgt von optionalem Leerraum)

 empfohlenes Zeilenende

〔…〕 optionaler Teil

  Beschreibung

Ausdruckstypen in informeller Notation
"ZEICHENFOLGE"
123
123.4
Anweisungstypen in informeller Notation
Ausdruck 
¦if Ausdruck :Anweisung  〔¦elif Ausdruck :ANWEISUNG〕〔¦else:ANWEISUNG
¦while Ausdruck Anweisung 〔¦else: ANWEISUNG
Standardnamen

Modul Attribut

builtin open( errors='ignore' )

os chdir( path: str )

Ausdrücke für ein gewünschtes Verhalten

Verhalten Ausdruck

Datei/slurp stream.read()
Zeit/Stampiglie datetime.datetime.now( datetime.timezone.utc ).astimezone().replace( microsecond=0 ).isoformat( 'T' )
Zeitzone/+01:00 tz0100 = datetime.timezone( datetime.timedelta( seconds=1*3600 ))
Zeit/+01:00 datetime.datetime( 2041, 12, 2, 9, 12, 34, tzinfo=tz0100 )
import urllib.request; page=urllib.request.open(URI); text=page.read.decode('utf8')

>724714 Kleines Python -Vokabular

 

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Schlüsselwörter zu dieser Seite/relevant keywords describing this page: Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram723750 stefan_ram:723750 Python-Kurs Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd723750, slrprddef723750, PbclevtugFgrsnaEnz Erklärung, Beschreibung, Info, Information, Hinweis,

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/python-kurs