Künstliche Intelligenz kapieren & programmieren - Michael Weigend - E-Book

Künstliche Intelligenz kapieren & programmieren E-Book

Michael Weigend

0,0

Beschreibung

  • Neuronale Netze selbst programmieren ohne Vorkenntnisse
  • Spannende Projekte von Chatbots bis hin zu Bilderkennung
  • Alle Grundlagen anhand von Bildern und Beispielen leicht verständlich erklärt

Du möchtest wissen, was hinter künstlicher Intelligenz und neuronalen Netzen steckt und deine eigenen selbstlernenden Programme schreiben?

In diesem Buch erfährst du mit anschaulichen Erklärungen und vielen Bildern, wie KI funktioniert und wie du neuronale Netze ganz einfach selbst programmieren kannst. Dafür brauchst du keine Vorkenntnisse. Alle notwendigen mathematischen Konzepte werden von Grund auf und sehr anschaulich erklärt. Ganz nebenbei erhältst du eine Einführung in die Programmiersprache Python.

In jedem Kapitel erwarten dich spannende Projekte von ersten kleinen Programmen wie einem selbstlernenden Währungsrechner bis hin zu praxistauglicher Bilderkennung.

Denkaufgaben und Programmierübungen mit Lösungen zum Download helfen dir, dein Wissen zu testen und zu vertiefen. So lernst du Schritt für Schritt, wie du mit einfachen Programmiertechniken deine eigenen künstlichen neuronalen Netze entwickelst und trainierst.

Aus dem Inhalt
  • Entscheidungsbäume
  • Überwachtes und nicht überwachtes Lernen
  • Clustering
  • Perzeptron
  • Vorhersagen treffen
  • Datenvisualisierung mit matplotlib
  • Neuronale Netze programmieren und trainieren
  • Aktivierungsfunktionen
  • Verborgene Schichten
  • Berechnungen mit NumPy
  • Bilderkennung
  • Python Imaging Library (PIL)
  • Computer Vision
  • Mathematisches Glossar

Sie lesen das E-Book in den Legimi-Apps auf:

Android
iOS
von Legimi
zertifizierten E-Readern
Kindle™-E-Readern
(für ausgewählte Pakete)

Seitenzahl: 269

Veröffentlichungsjahr: 2023

Das E-Book (TTS) können Sie hören im Abo „Legimi Premium” in Legimi-Apps auf:

Android
iOS
Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



Inhaltsverzeichnis
Impressum
Einleitung
Kapitel 1: Denkende Maschinen
1.1 Was ist künstliche Intelligenz?
1.2 Chatbots
1.3 Vorbereitung: Python installieren
1.4 Projekt: Mini-Eliza‌‌
1.4.1 Schritt 1: Auf eine Eingabe reagieren
1.4.2 Schritt 2: Mehr Intelligenz durch verschachtelte if-else-Anweisungen
1.4.3 Schritt 3: Mit elif‌ die technische Qualität verbessern
1.4.4 Schritt 4: Von der einfachen Reaktion zum Gespräch
1.4.5 Schritt 5: Jetzt kommt der Zufall‌ ins Spiel
1.4.6 Fazit
1.5 Lernende Programme‌ (Entscheidungsbäume)
1.6 Trainingscamp: Programmieren mit Listen‌
1.6.1 Station 1: Indizes
1.6.2 Station 2: Listen verarbeiten
1.6.3 Station 3: Mit einer Liste von Tupeln modellieren
1.7 ‌‌Projekt: An wen denkst du?
1.7.1 Schritt 1: Vorbereitung
1.7.2 Schritt 2: Interaktion
1.7.3 Schritt 3: Schluss
1.7.4 Fazit
1.8 Subsymbolische KI‌‌ – Machine Learning
1.8.1 Die Grenzen symbolischer Intelligenz: Beispiel Verkehrsschilder
1.8.2 Drei Arten des Machine Learnings
1.8.3 Wie werden Verkehrszeichen erkannt?
1.9 Projekt‌: k-Means‌-Clustering
1.9.1 Schritt 1: Vorbereitung
1.9.2 Schritt 2: Clustern
1.9.3 Fazit
1.10 Rückblick
Kapitel 2: Einfache Vorhersagen – lineare Regression
2.1 Lernen durch Erfahrung: Wie lernt man Murmeln‌?
2.2 Projekt‌: Ein klassischer Währungsrechner‌
2.3 Was ist eine lineare Beziehung‌?
2.4 Lernen durch Beobachten‌
2.5 Projekt‌: Ein Währungsrechner‌, der lernen kann
2.6 Trainingscamp: Daten‌ visualisieren
2.6.1 Station 1: Ein Diagramm‌ erstellen
2.6.2 Station 2: Linienformate und Achsenbeschriftung
2.6.3 Station 3: Die range()‌-Funktion verwenden
2.6.4 Station 4: List Comprehensions‌
2.6.5 Station 5: Mehrere Kurven in einem Koordinatensystem
2.7 Daten‌ professionell auswerten: Lineare Regression‌
2.8 Rückblick
Kapitel 3: Daten klassifizieren: Wie lernt ein Computer, Objekte zu erkennen?
3.1 Bilddaten auswerten: Von Menschen und Hunden
3.2 Etikettierte Daten‌ (Labeled Data‌)
3.3 Mit etikettierten Daten lernen
3.3.1 Lernschritt 1
3.3.2 Lernschritt 2
3.3.3 Lernschritt 3
3.4 Moderation‌: Gemäßigte Änderungen
3.5 Projekt‌: Ein lernfähiges Vorhersageprogramm‌
3.5.1 Schritt 1: Vorbereitung
3.5.2 Schritt 2: Training
3.5.3 Schritt 3: Vorhersagen
3.6 Hintergrund: Linear separierbare Daten‌‌
3.7 Noch etwas Programmiertechnik: Daten‌ laden und speichern‌
3.7.1 Eine Textdatei lesen und ausgeben
3.7.2 Einen String‌ aufspalten
3.8 Rückblick
Kapitel 4: Neuronale Netze
4.1 Neuronale Netze in der Natur
4.2 Feuern! Das Alles-oder-nichts-Prinzip
4.3 Künstliche Gehirne
4.4 Ein Gehirn ist kein Computer
4.5 Projekt: Reaktionstest‌‌ – Ein Blick ins eigene Nervensystem
4.6 Künstliche neuronale Netze
4.7 Die Anfänge: Das Perzeptron‌ von Frank Rosenblatt
4.8 Logische Operationen
4.9 Ein Perzeptron‌ für logische Operationen
4.10 Training‌
4.11 Projekt‌: Ein Rosenblatt-Perzeptron‌
4.11.1 Programmteil 1: Vorbereitung
4.11.2 Programmteil 2: Definition der Funktion vorhersehen()
4.11.3 Programmteil 3: Definition der Funktion trainieren()
4.11.4 Programmteil 4: Das Hauptprogramm
4.12 Die Grenzen des einlagigen Perzeptrons‌: Das XOR‌-Problem
4.13 Rückblick
Kapitel 5: Moderne künstliche neuronale Netze
5.1 Eine bessere Aktivierungsfunktion‌: Die Sigmoid-Funktion
5.2 Projekt: Eine Wertetabelle für die Sigmoid-Funktion‌
5.3 Die Ableitung der Sigmoid-Funktion
5.4 Projekt: Die Sigmoid-Funktion als Aktivierungsfunktion für das ODER-Perzeptron‌
5.5 Verborgene Knoten und die Grundideen der Error Backpropagation‌
5.5.1 Vom Wandern in den Bergen: Das Gradientenverfahren
5.5.2 Partielle Ableitung‌
5.5.3 Anwendung des Gradientenverfahrens und Error Backpropagation
5.5.4 Die Änderung eines Gewichts bei einem Trainingsschritt
5.5.5 Aktualisierung der übrigen Gewichte
5.6 Projekt‌: Ein neuronales Netz, das das XOR-Problem löst‌
5.6.1 Programmteil 1: Vorbereitung
5.6.2 Programmteil 2: Die Funktion vorhersagen()
5.6.3 Programmteil 3: Definition der Funktion trainieren()
5.6.4 Programmteil 4: Zufällige Trainingsdaten‌ erzeugen
5.6.5 Programmteil 5: Training
5.6.6 Programmteil 6: Testen‌
5.7 Projekt‌: Gurke oder Apfel?
5.7.1 Programm 1: Trainingsdaten erzeugen
5.7.2 Programm 2: Das neuronale Netz
5.8 Rückblick
Kapitel 6: Bilder auswerten und Ziffern erkennen
6.1 Was sind Vektoren‌ und Matrizen‌?
6.2 Trainingscamp: NumPy‌
6.2.1 Vorbereitung
6.2.2 Station 1: Arrays‌ erzeugen
6.2.3 Station 2: Operationen mit Arrays‌ und Skalaren
6.2.4 Station 3: Operationen mit zwei Arrays
6.2.5 Station 4: Die Form eines Arrays‌ verändern
6.2.6 Station 5: Matrizenmultiplikation mit dot()
6.2.7 Station 6: Zufallsarrays‌‌
6.2.8 Station 7: Elemente eines Arrays verarbeiten
6.2.9 Station 8: Auf Elemente eines Arrays zugreifen
6.3 Mit Arrays die Programmierung vereinfachen
6.3.1 Programmteil 1: Vorbereitung
6.3.2 Programmteil 2: Die Funktion vorhersagen(i)
6.3.3 Programmteil 3: Definition der Funktion trainieren()
6.3.4 Programmteil 4: Training
6.4 Projekt: Ziffern erkennen‌
6.4.1 Trainings- und Testdaten
6.4.2 Eine Ziffer auf dem Bildschirm darstellen
6.4.3 Aufbau des neuronalen Netzes
6.4.4 Programmierung des neuronalen Netzes
6.5 Rückblick
Kapitel 7: Eigene Projekte zur Bilderkennung‌
7.1 Fotolabor: Bilder verarbeiten mit der Python Imaging Library‌ (PIL‌)
7.1.1 Vorbereitung
7.1.2 Experiment 1: Ein Bild laden und auf dem Bildschirm darstellen
7.1.3 Experiment 2: Attribute eines Image-Objekts ausgeben
7.1.4 Experiment 3: Die Größe eines Bilds ändern
7.1.5 Experiment 4: Ein Bild in eine Liste überführen
7.1.6 Experiment 5: Aus einem ‌Farbbild ein Graustufenbild gewinnen
7.2 Projekt‌: Ziffern auf eigenen Bildern erkennen
7.2.1 Vorbereitung
7.2.2 Gewichte speichern
7.2.3 Das vortrainierte neuronale Netz nutzen
7.3 Projekt‌: Mit der Kamera Gesten erkennen
7.3.1 Vorbereitung
7.3.2 Die Kamera ausprobieren
7.3.3 Die Programmierung
7.4 Rückblick
Kapitel 8: Fortgeschrittene Projekte mit künstlicher Intelligenz
8.1 Computer Vision
8.2 Neuronale Netze mit PyTorch
8.3 KI mit Google Colaboratory
Glossar: Mathematisches Wörterbuch für KI
Ableitung‌
Ableitung einer konstanten Funktion
Ableitung einer quadratischen Funktion
Aktivierungsfunktion‌
Baum‌
Benchmark‌
Del-Symbol ∂
Delta‌ Δ
Differenzialquotient
Fehlerfunktion
Funktion (Mathematik)
Funktion (Programmierung)
Gleichgerichtete Lineareinheit – ReLU‌
Gleichverteilung
Gradient
Graph (Graphentheorie)
Graph einer Funktion
Kettenregel‌
Knoten‌ eines künstlichen neuronalen Netzes
Künstliches neuronales Netz
Matrix
Lineare Funktion‌
Lineare Separierbarkeit‌
Neuron‌
Neuronales Netz
Partielle Ableitung
Sigmoid-Funktion
Spaltenvektor
Steigung
Summenregel‌
tanh‌-Funktion
Target
Transponierte Matrix
XOR-Problem
Zeilenvektor

Michael Weigend

Künstliche Intelligenz kapieren und programmieren

Visuell lernen und verstehen mit Illustrationen und Projekten zum Experimentieren

Impressum

Bibliografische Information der Deutschen Nationalbibliothek Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar.

ISBN 978-3-7475-0654-7 1. Auflage 2023

www.mitp.de E-Mail: [email protected] Telefon: +49 7953 / 7189 - 079 Telefax: +49 7953 / 7189 - 082

© 2023 mitp Verlags GmbH & Co. KG

Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten wären und daher von jedermann benutzt werden dürften.

Dieses E-Book verwendet das EPUB-Format und ist optimiert für die Nutzung mit Apple Books auf dem iPad von Apple. Bei der Verwendung von anderen Readern kann es zu Darstellungsproblemen kommen.

Der Verlag räumt Ihnen mit dem Kauf des E-Books das Recht ein, die Inhalte im Rahmen des geltenden Urheberrechts zu nutzen. Dieses Werk, einschließlich aller seiner Teile, ist urheberrechtlich geschützt. Jede Verwertung außerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlags unzulässig und strafbar. Dies gilt insbesondere für Vervielfältigungen, Übersetzungen, Mikroverfilmungen und die Einspeicherung und Verarbeitung in elektronischen Systemen.

Der Verlag schützt seine E-Books vor Missbrauch des Urheberrechts durch ein digitales Rechtemanagement. Bei Kauf im Webshop des Verlages werden die E-Books mit einem nicht sichtbaren digitalen Wasserzeichen individuell pro Nutzer signiert. Bei Kauf in anderen E-Book-Webshops erfolgt die Signatur durch die Shopbetreiber. Angaben zu diesem DRM finden Sie auf den Seiten der jeweiligen Anbieter.

Lektorat: Janina Bahlmann, Nicole Winkel Fachkorrektorat: Margareta Schlüter Sprachkorrektorat: Jürgen Benvenuti Covergestaltung und Coverbild: Christian Kalkert Illustrationen: Michael Weigend Icons: © fotohansel \ stock.adobe.com Satz: III-satz, Kiel, www.drei-satz.deelectronic publication: III-satz, Kiel, www.drei-satz.de

Einleitung

Künstliche Intelligenz (KI) und Machine Learning sind Themen, über die heute viel geredet wird. Die Grundlagen dieser neuen Technik verstehen nur wenige. Sie sind auch nicht ganz einfach. Um eine Vorstellung davon zu bekommen, wie KI funktioniert, musst du dich auf einige neue Denkweisen einlassen.

Dieses Buch folgt der pädagogischen Idee des Konstruktionismus‌: Baue etwas und lerne dabei! Von Anfang an wirst du ermuntert, selbst zu programmieren. Du kannst die Programmtexte aus dem Buch abschreiben. Das geht, denn sie sind nicht sehr lang. Du kannst die Programme aber auch von der Webpräsenz des mitp-Verlags herunterladen. Besuche die Adresse https://www.mitp.de/0652, wähle die Registerkarte Downloads und klicke auf den Link Programmbeispiele. Nach dem Entpacken hast du für jedes Kapitel ein Verzeichnis mit den Programmen, die im Buch erklärt werden. Im Downloadbereich findest du auch die Lösungen zu allen Aufgaben in diesem Buch.

Ein Programmbeispiel ist ein guter Ausgangspunkt für eine eigene Entwicklung. Es funktioniert, so wie es ist. Du kannst es genau kopieren, aber du kannst es auch abwandeln. Am besten änderst du so viel wie möglich und machst so das Beispiel zu deinem eigenen Projekt. Ändere die Variablennamen. Füge weitere Features in dein Programm ein. Schreibe neue Texte für die Ausgaben des Programms. Experimentiere! Mache Fehler! Am meisten lernt man aus den eigenen Fehlern. Wenn deine eigene Programmversion nicht laufen will, hast du immer noch das Beispiel. Achte auf die Unterschiede zu deinem Projekt. Dann wirst du sicher die Stelle finden, an der es hakt.

Dieses Buch ist gleichzeitig eine Einführung in Python. Es werden keine Programmiervorkenntnisse erwartet. Wenn du schon programmieren kannst, werden dir vielleicht einige Besonderheiten auffallen. Ich habe versucht, mit möglichst wenigen Programmierkonzepten auszukommen und viele Sachen weggelassen, die in anderen Programmierbüchern vorkommen. Es gibt z.B. keine objektorientierte Programmierung. Wir verwenden zwar Objekte, aber wir werden keine Klassen definieren. Andererseits lernst du einige spezielle Module kennen, die nicht unbedingt zum Standard gehören. Wir werden z.B. mit dem sehr schnellen Modul NumPy arbeiten, Diagramme von Funktionen mit Matplotlib erstellen, und mit PIL und OpenCV Bilder bearbeiten. Keine Angst: Das meiste ist einfache Python-Programmierung.

Alle Projekte drehen sich um künstliche Intelligenz, maschinelles Lernen und neuronale Netze. Du entwickelst einfache Chatbots, lernfähige Programme, die mit Hilfe symbolischer oder subsymbolischer KI Dinge erkennen können, und schließlich Programme, die Livebilder deiner Kamera auswerten und Gesten erkennen können. Zum Training deiner selbst programmierten neuronalen Netze verwendest du freie Datensätze aus dem Internet und Bildmaterial, das du eigenhändig erstellt hast.

Das Ziel ist es, durch aktives Programmieren ein Gefühl für die Grundprinzipien und Möglichkeiten der neuen Technik zu gewinnen. Die mathematischen Passagen in diesem Buch sind möglicherweise echte Herausforderungen. Aber oft ist es so, dass man die Formeln besser versteht, wenn man sieht, dass sie wirklich funktionieren.

Viel Erfolg bei deinem Ausflug in die Welt der künstlichen Intelligenz!

Michael Weigend

Kapitel 1: Denkende Maschinen

Das erste Kapitel gibt dir einen leicht verständlichen Einstieg in die Welt der KI. Du gewinnst einen Überblick über Formen des Machine Learnings und erfährst, welche Rolle künstliche neuronale Netze hierbei spielen. Ganz nebenbei lernst du die Grundlagen der Programmiersprache Python.

1.1  Was ist künstliche Intelligenz?

Der Begriff »Künstliche Intelligenz« (KI) ist gar nicht so neu, wie man vielleicht glauben mag. Tatsächlich hat man die ersten funktionierenden Computer in den 1960er-Jahren gerne als »denkende Maschinen« oder »Elektronengehirne« bezeichnet. Heute würde man diese Vorstellung belächeln. Die damaligen Computer konnten zwar schon große Datenmengen zur Buchhaltung und Verwaltung verarbeiten, aber sie konnten nicht im Entferntesten selbstständig denken wie ein Mensch. Inzwischen ist viel Zeit vergangen. Heute gibt es tatsächlich digitale Systeme, die Autos steuern, Musik komponieren und Aufsätze schreiben können. Und es gibt ernst gemeinte Warnungen, dass künstliche Intelligenzen den Menschen überflügeln und ihm gefährlich werden könnten.

»Künstliche Intelligenz« umfasst ein weites Gebiet der Digitaltechnik. Man unterscheidet grob zwischen symbolischer KI‌‌ und subsymbolischer‌‌ KI:

Bei symbolischer KI wird das intelligente Verhalten durch klare Regeln bestimmt, die jeder Mensch nachvollziehen kann. Beispiele sind konventionelle Chatbots, mit denen man einfache Gespräche führen kann, und Programme, die auf der Grundlage von vorgegebenen Merkmalen Objekte erkennen können.

Bei subsymbolischer KI erlernt das System durch viele Beobachtungen intelligente Verhaltensweisen, etwa die Fähigkeit, Buchstaben zu erkennen. Jedoch ist das Wissen, das das Verhalten bestimmt, für Menschen nicht nachvollziehbar. Das System ist wie eine »Black Box«. Das Innere bleibt verborgen und rätselhaft. Diese Art von Intelligenzerwerb nennt man »Machine Learning‌« oder auf Deutsch »maschinelles Lernen«.

In diesem Buch geht es vor allem um die Programmierung künstlicher neuronaler Netze. Sie gehören zum zweiten Typ, der subsymbolischen KI. Um besser zu verstehen, was den Unterschied ausmacht, werden wir uns zunächst mit zwei Beispielen symbolischer KI beschäftigen. Du wirst in diesem Kapitel einen Chatbot und ein lernfähiges Programm, das Personen erkennen kann, entwickeln.

1.2  Chatbots

Im Jahr 1950 beschrieb der englische Wissenschaftler Alan Turing‌ in seinem Artikel »Computing Machinery and Intelligence« eine Methode, mit der man – seiner Meinung nach – beweisen kann, ob eine Maschine intelligent ist und denken kann wie ein Mensch. Er nannte sie »imitation game‌«; inzwischen ist sie als »Turing-Test‌« in die Geschichte eingegangen. Die Grundidee des Turing-Tests ist, dass sich Intelligenz im Gespräch zeigt. Ein Mensch (der Befrager) unterhält sich über geschriebenen Text mit zwei Gesprächspartnern A und B. Der eine Partner ist ein Computer, der andere ein Mensch. Wenn der Befrager aufgrund der Antworten seiner Gesprächspartner Mensch und Computer nicht unterscheiden kann, zeigt der Computer Intelligenz.

1966 entwickelte der deutsch-amerikanische Informatiker Joseph Weizenbaum‌ am MIT‌ (Massachusetts Institute of Technology) in den USA das erste Computerprogramm, das in Ansätzen den Turing-Test bestehen konnte. Das Programm heißt Eliza‌ und wurde rasch weltberühmt. Eliza verhält sich wie eine Gesprächstherapeutin. Du kannst dich mit ihr unterhalten und sie versucht, dich zum Reden zu bringen.

Im Internet findest du einige Online-Versionen von Eliza, zum Beispiel auf der Webpräsenz von Medical Artificial Intelligence, http://www.med-ai.com/models/eliza.html.de.

Ein Dialog mit Eliza kann z.B. so verlaufen:

Eliza: Hallo, ich bin Eliza. Was hast du auf dem Herzen?Du: Ich hasse meinen Job.Eliza: Hass kann Wertvolles zerstören.Du: Außerdem schlafe ich schlecht.Eliza: Kannst du mir das Problem näher erklären?...

Eliza funktioniert so: Bei jeder Benutzereingabe prüft das Programm, ob bestimmte Wörter wie z.B. hass vorkommen, und gibt dann eine Antwort, die irgendwie dazu passt. So hat man das Gefühl, von Eliza verstanden zu werden. Im folgenden Projekt kannst du diese Idee selbst umsetzen (Abschnitt 1.4). Bevor es an das Programmieren geht, musst du allerdings noch einige Dinge vorbereiten.

1.3  Vorbereitung: Python installieren

Für dieses Projekt benötigst du keinerlei Vorkenntnisse, aber auf deinem Computer muss die Programmiersprache Python‌ installiert sein. Der Kasten gibt dir einige Hinweise, was zu tun ist.

Python installieren

Die Programmiersprache Python ist leicht zu erlernen und dennoch sehr mächtig. Viele Apps, die du aus deinem Alltag kennst, sind in Python geschrieben, z.B. Routenplaner, Gesichtserkennung oder Wettervorhersagen. Python ist kostenlos und kann einfach von der Webpräsenz der Python Software Foundation heruntergeladen werden. Besuche die Webseite https://www.python.org/, klicke auf Downloads, und wähle die aktuelle Python-Version, die zu deinem Betriebssystem passt.

Unter Microsoft Windows lädst du eine ausführbare Datei (Name endet auf.exe) herunter, die du durch Doppelklick startest.

Auf einem Mac läuft die Installation genauso, mit dem kleinen Unterschied, dass der Name der heruntergeladenen Datei auf .pkg endet.

Auf Linux-Rechnern ist Python meist schon vorinstalliert. Die neuste Version kannst du auf den meisten Linux-Systemen mit folgendem Befehl installieren:

sudo apt-get install python3

Wenn du Python installiert hast, befindet sich auf deinem Computer neben der eigentlichen Programmiersprache auch eine Entwicklungsumgebung‌ namens IDLE‌. Die Abkürzung steht für Integrated Development and Learning Environment. Mit einer Entwicklungsumgebung kann man Programmtexte erstellen und testen. Außer IDLE gibt es auch viele andere Entwicklungsumgebungen für Python. Dieses Buch bezieht sich aber ausschließlich auf IDLE.

Projektordner erstellen

Richte mit dem Dateimanager (bei Windows also im Explorer) einen Projektordner ein, in dem du alle deine Programme zu diesem Buch speicherst. Dieser Ordner könnte z.B. Python-Programme heißen. Ich empfehle dir, in diesem übergeordneten Verzeichnis für jedes Kapitel des Buchs ein eigenes Verzeichnis anzulegen (Kapitel_1, Kapitel_2, …). Verwende besser nicht die Ordner mit den fertigen Programmbeispielen, die du von der Webseite des mitp-Verlags heruntergeladen hast. Die Originaldateien bleiben dann unverändert. Das kann vor allem bei der Suche nach Fehlern in den eigenen Programmversionen helfen. Wenn dein eigenes Programm nicht läuft, kannst du in der Downloadversion nachsehen, was da anders ist.

Den IDLE-Programmeditor starten

Starte die Entwicklungsumgebung IDLE‌. Unter Windows gibst du in das Suchfeld am unteren Bildschirmrand idle ein und doppelklickst dann das Programmicon.

Auf dem Mac öffnest du ein Spotlight-Suchfenster, gibst idle ein und wählst dann die IDLE-App. Unter Linux gibst du auf der Kommandozeile den Befehl idle3 ein.

Es öffnet sich das Fenster der IDLE-Shell. Klicke in der Menüleiste oben links auf File. Klicke dann im Pulldown-Menü auf den Befehl New File.

Nun öffnet sich das Editor-Fenster. Hier schreibst du deinen Programmtext.

Speichere als Erstes den noch leeren Programmtext in deinem Projektordner ab. Wähle als Dateinamen eliza.py.

Du bist soweit. Beginnen wir mit dem Programmieren.