# data[].attributes.body
Sollen wir auch die Python-Bibliotheken erwähnen?
Und Funktionen und Klassen?

# data[].attributes.body
Operatoren:
1. Arithmetische Operatoren
2. Vergleichsoperatoren
3. Logische Operatoren
4. Zuweisungsoperatoren
5. Aufgabenbedingte Operatoren
-> Bedingte Ausdrücke
->Schleifen-Ausdrücke
-> Funktions-Ausdrücke
-> Listen, Tupel, Dictionaries

# data[].attributes.body
1. Syntax-Fehler
-> Programm verstößt gegen die Syntaxregeln
-> z.B. Klammer fehlt, Semikolon wird falsch gesetzt oder ein Schlüsselwort wird falsch geschrieben
2. Ausnahmefehler
-> ein Fehler der nicht durch die Syntaxregeln der Codesprache erfasst wird
-> Laufzeitfehler
-> z.B. wenn man den String "fünf" mit einem Integer addieren will (text und nummer kann nicht addiert werden)
3. Logikfehler
-> der code ist syntaktisch richtig und löst keine Syntaxfehler oder Ausnahmen aus, aber nicht das erwartete Ergebnis liefert
-> schwieriger zu beheben als Syntax- oder Ausnahmefehler
-> z.B.
x = 5
if x > 10:
print("x ist größer als 10")
else:
print("x ist kleiner oder gleich 10")
-> Ausgabe wird x ist kleiner oder gleich 10 obwohl die lösung x=5 ist. die if-Anweisung wurde aber falsch definiert und geschrieben.

# data[].attributes.body
form turtle import*
Bewegung
- forward(schritte) bzw. backward(schritte) bewegt die Turtle um eine gewisse Schrittanzahl nach vorne bzw. nach hinten
- goto(x, y) bewegt die Turtle an den Bildpunkt (x, y)
- speed(zahl) beschleunigt oder verlangsamt die Bewegung der Turtle

zahl kann Wert von 0 bis 10 annehmen

Ausrichtung
- right(winkel) rotiert die Turtle um einen bestimmten Winkel nach rechts
- winkel ist typischerweise eine ganze Zahl zwischen 0 und 360
- left(winkel) rotiert die Turtle um einen bestimmten Winkel nach links

- penup() hebt den Stift an, wodurch keine Linie mehr gezeichnet wird
- pendown() setzt den Stift wieder ab, sodass eine Linie gezeichnet wird

Form
- shape(string) legt die Form der Turtle fest

Mögliche Formstrings sind: "turtle", "arrow", "circle", "square" , "triangle", "classic"

Farbe
- pencolor(string) setzt die Stiftfarbe der Turtle fest

Mögliche Farbstrings sind: "yellow", "blue", "red", "green", "orange"

- bgcolor(string) setzt die Hintergrundfarbe des Bildschirmes fest
- Mit begin_fill() und end_fill() werden Codezeilen "umrahmt", die eine Form zeichen, die anschließend farblich ausgefüllt werden soll
- fillcolor(string) -> Farbe festlegt ("rot", "blau", ...)

# data[].attributes.body
Shell: Schale, "Hülle" des Codes, mit >>> oder ... wird dem Computer Bescheid gegeben, dass hinter ihm Code kommt der später ausgeführt werden soll -> Eingabeaufforderung. Alles was dann ohne diesen Zeichen vom Computer ausgegeben wird ist die Ausgabe -> Ende der Hülle
Variable: Speicher, in dem man Informationen - z.B. Zahlen, Text ablegen kann während man programmiert. Normalerweise hat man eine Datenbank oder Datei für Informationsspeicherung, aber währen des Programmierens benutzt man dazu die Variablen. Es gibt mehrere Arten von Variablen - "mehr Schubladen" einer Datenbank -> Type interference - Python erkennt selbst die arten der Variablen, man musst die nicht jeweils angeben - die Arten erklärt Roxy
die Variablen benutzt man beim Programmieren um mithilfe denen Aufgaben aufzustellen oder irgendwelche Vorgänge zu programmieren
Schlüsselwörter: Wörter die bereits eine Aufgabe in der Python-Sprache haben und nicht als Variable benutzt werden können
Kommentare: beschriftet man mit einem # davor - sind Kommentare für denjenigen der den Code schreibt -> beeinflusst nicht den Code sondern dient als Miterklärung oder Bemerkungen zu dem Code für Ausführlichkeit und damit der Code auch später verständnisvoll ist -> besser für Debugging

https://www.sivakids.de/python-syntax/

# data[].attributes.attachment_link.description
Wie funktioniert die Syntax in Python? In unserem Tutorial erklären wir Dir wichtige Grundlagen Schritt-für-Schritt. | Beispiele & Tipps.

# data[].attributes.body
Was ist eine Schleife:
-> ist die mehrfache Wiederholung gleicher oder ähnlicher Anweisungen solange eine bestimmte Bedingung erfüllt wird -> zwei Arten von Schleifen: for und while Schleife
for-Schleife:
- wird verwendet um eine Anweisung oder mehrere Anweisungen zusammen für jedes Element in einer Sequenz ausführen
-> Sequenz:
-> Element:
- Syntax der for schleife: for element in sequence:
- dabei wird in jedem Schleifendurchlauf das aktuelle Element der Sequenz der Variablen element zugewiesen - die anweisungen in der schleife werden dann für jedes Element in der Sequenz durchgeführt

while Schleife:
- wird verwendet um Anweisungen so lange auszuführen, wie eine bestimmte Bedingung erfüllt ist
- Syntax der while schleife: while bedingung:
- dabei werden die anweisungen innerhalb der schleife solange wiederholt, wie die bedingung wahr (true) ist. sobald sie false ist wird der vorgang beendet

https://www.sivakids.de/python-for-schleife/

# data[].attributes.body
- mehrere Daten zusammen speichern
- in [ ] geschrieben, mit Komma getrennt, einzelne Elemente in "" schreiben
- Gleiche Elemente mehrfach vorkommen
x = [ "blau", "rot", "grün"]
- len () -> Anzahl der Elemente der Liste

Index
- Position des Elements in der Liste
- auf Elemente zugreifen, verändern, Auf Zeichen Zgreifen
- beginnt bei 0, von hinten -1
- nur Integer

Modifikation
- Elemente auf Liste überschreiben
x = [ "blau", "rot", "grün"]
x [1]= "pink"

Zugriff auf Zeichen
- Wenn Elemente Strings sind, über Index auf Zeichen zugreifen
- x = [ "blau", "rot", "grün"]
print(x[0] [2])    => a

Erweitern
- mit + hinzufügen -> print(x + a)     => plus das Element a
- mit * wiederholen -> print (x*2)     => x doppelt dargestellt

Hinzufügen von Elementen
- neues Element am Ende der Liste Angehängt
- .append()

Entfernen von Elementen
- .pop()
- in Klammer Index

Verschachtelte Listen
- Liste kann Liste als Element haben
- könne verschiedene Datentypen besitzen -> z.B. Integer

Entnehmen von Elementen
- [ 2:4 ]  -> gibt Index 2 bis 3 aus
- [4: ] -> 4 bis Schluss

Split()
- Zeichenkette in einzelne Wörter aufteilen
- gibt Liste zurück
a = x.split()

Join()
- fügt Liste von Strings zu einem String
a = "  ".join(t) --> in "" bestimmt wie es verbunden wird (z.B. #, !)

Schleifen bei Listen
- for <Variable> in <Liste>:
<Aktion mit Variable>
- for x in t:
if x[1] == "e"
print(x)             => Ausgabe von Element mit e an zweiter Stelle

# data[].attributes.body
- Programmablauf -> einzeln von oben abgearbeitet
- Code unter bestimmten Voraussetzungen -> Bedingungen
- if -> wenn, um Bedingungen zu überprüfen, folgende Aktion wird nur ausgeführt wenn Bedingung erfüllt ist
x = 13
if x > 10:
print()
print ()

- else -> sonst, wenn if-Bedingung nicht erfüllt wird else ausgeführt
x = 13
if x > 10:
print()
else:
print()

elif -> weitere Bedingung, Mehrere elif Zweige möglich
- können mit Boolen verknüpft werden -> and (wahr, wenn beide wahr sind), or (wahr, wenn eins mindestens wahr ist)

=> If Bedingung1:
Aktion 1
elif Bedingung 2:
Aktion 2
elif Bedingung 3:
...
else:
Aktion

# data[].attributes.body
- Java
- C++
-> Programmieren von Apps, Spielen, Bilderbearbeitungsprogramme
- HTML
- CSS
-> HTML und CSS Grundlagen für Websiten, müssen nicht unbedingt als Programmiersprachen angesehen werden
- Python

# data[].attributes.body
https://www.canva.com/design/DAFeXyXV3H4/6s9_fUyr8ZOiXAPUyIKaEQ/edit?utm_content=DAFeXyXV3H4&utm_campaign=designshare&utm_medium=link2&utm_source=sharebutton

# data[].attributes.body
Was ist Programmieren
-Hardware: der Computer selbst, die Mechanik
-Software: bestimmt die Tätigkeit des Computers - was er machen soll
-Beispiel Handy: Handy als Ding ist der Hardware, alle Apps, auch die Tatsache, dass sich das Handy beim antippen vom Screen anschaltet ist der Software
-> Programmieren ist, wenn man ein neues Software für den Hardware erfasst - man erstellt Programme die der Computer verarbeitet und nach ihnen dann handelt
-> ein Programm wird in Form eines Textes (Programmcode oder nur Code genannt) geschrieben, in einer Sprache die der Computer verstehen kann (Programmiersprachen)

# data[].attributes.body
Allgemein
- geben an welche Art von Daten in einer Variable gespeichert wird
- Welche Operation durchgeführt wird
- primitive: strings, integer, float, boolean
- zusammengesetzte: Listen, Tupel, Dictionaries

Strings
- Zeichenkette
- Folge von Buchstaben und anderen Zeichen
- in Anführungszeichen  "/'
- Ausgabe von Strings -> print( )
- Mit + Strings aneinander gehängt -> String + String => String
- mit * String mehrfach wiederholt -> Zahl * String => String
- Länge von Strings -> len()
- Platzhalter - später auffüllbar, durch Variable ersetzbar, {}, f/F

Integer
- ganze Zahl
- direkt im Code verwendet -> print(zahl)

Float
- abkürzung "floating point number"
- Gleitkommerzahl
- mit Punkt dargestellt -> 2.5

=> man kann rechene
- einfache Rechnungen: print(6+4) -> +-*/
komplexe Rechnungen: print(4+(3-1)*5)

=> Variablen erhöhen -> String +1

Boolean
- Wahrheitswert
- True oder False -> ==, !=, <=, >=

# data[].attributes.body
1. Allgemeine Einführung  - Ani
-> was ist programmieren?
-> welche Sprachen gibt es?
-> wo ist Programmieren anwendbar?

2. Python
-> Begriff-Erklärungen - Ani
-> Datentypen - Roxy
-> Verzweigungen - Roxy
-> Schleifen - Ani
-> Listen - Roxy
-> Bugs & Debugging - Fehlerarten - Ani
-> Turtle - Ani
-> Anwendung: interaktives Programmieren Beispiel Turtle - Zusammen

# data[].attributes.body
https://replit.com/@roxyhamacher/Turtle

# data[].attributes.attachment_link.description
Write and run Python code using our online compiler (interpreter). You can use Python Shell like IDLE, and take inputs from the user in our Python compiler.