Python Flashcards
Was ist Python?
Programmiersprache, die interpretiert
objektorientiert und plattformunabhängig
Wofür wird Python angewendet?
Skriptprogrammierung, Webprogrammierung
Wie unterscheiden sich Java und Python?
Python im Vergleich zu Java:
Zeileneinrückung in Python Bestandteil der Syntax
kein Compiler
kein ; am Zeilenende
Was ist ein Compiler?
Übersetzungsprogramm, das maschinenlesbaren Code erzeugt aka Binärcode
Python NICHT
Wie werden Kommentare bei Python eingefügt?
# gelten für ganze Zeile
Was muss zwingend zu Beginn in den Code, wenn Python und HTML in 1 Quellcodedatei sein sollen?
print(“Content-type: text/html”)
damit Brwoser das als HTML Seite erkennt
Wie werden in Python mehrzeilige Ausgaben programmiert?
print(“””
“””)
Wie fängt jede Python-Datei oben an?
#!python #-*- encoding:utf-8 -*-
import cgi (Schnittstelle)
Wie werden HTML Antworten für den Browser in der Python-Datei programmiert?
print(“Content-type:text/html”)
print()
Wie werden Formulareingaben mit Python verarbeitet?
Absenden des Formulars ruft serverseitiges Skript auf
form=cgi.FieldStorage()
varibale = form.getvalue(“variable”, “defaultwert”)
Was liefert form.getvalue()?
liefert immer String, auch bei Zahleneingaben, weil URLs keine Datentypen kennen
Was passiert, wenn nicht angekreuzte Chechboxen/Radio Buttons gesendet werden?
liefert none
-> kein leerer String!
Wie kann man vermeiden, dass der String none ist?
mit if Abfrage
Defaultwert angeben
Wie kann man mit Zahleingaben rechnen?
String muss in Zahl umgewandelt werden
Ganzzahl: int(form.getvalue(“stringvariable”))
Fließkommazahl: float(form.getvalue(“stringsvariable”)
Was sind Fließkommazahlen?
Zahlen, die sehr groß oder sehr klein sind, die sich nicht als Ganzzahlen darstellen lassen und gebrochene Werte enthalten
Welche 2 Möglichkeiten gibt es für formularbasierte Webanwendungen?
- Möglichkeit
HTML Eingabeformular -> submit button ruft Python Skript auf
Python Skript liest GET Parameter über cgi Schnittstele aus, führt Berechnungen durch und stellt Ergebnisse dar - Möglichkeit
Startseite index.html leitet direkt auf Python-Seite weiter (mit meta http-equiv=””)
Welche Nachteile hat die reine Python Lösung?
HTML Code wird mittels print() Befehlen ausgegeben
schwer lesbar
Formatierung kaum noch möglich
Vermischung von HTML-Inhalten und Programmlogik
Was ist cgi?
cgi steht für common gateaway interface und stellt die Kommunikations-Schnittstelle zwischen Webserver und Drittsoftware dar, die Anfragen bearbeitet
Wie können Anführungsstriche/Apostrophe in Python ausgegeben werden?
escapen mit Backslash
"Hallo”\
Wie kann ein Backslash ausgegeben werden in Python?
\
Welche internen Datentypen gibt es in Python?
Boolean: bool -> true und false
Ganzzahl: int -> beliebig viele Ziffern
Fließkommazahl: float
Zeichenkette: str
Array von Werten: list
Assoziatives Array: dict
Welche Typumwandlung findet automatisch statt?
int -> float
Wie kann der Datentyp einer Variablen geprüft werden?
Bedingungsabfrage
b = true if type(b) == bool: print("b ist vom Typ Boolean") else: print("b ist nicht vom Typ Boolean")
Welche String Vergleiche gibt es?
true wenn gleicher Inhalt: a == b
true wenn unterschiedlicher Inhalt: a!=b
true wenn kleiner/vorher: a<b></b>