Python Flashcards

1
Q

Was ist Python?

A

Programmiersprache, die interpretiert

objektorientiert und plattformunabhängig

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Wofür wird Python angewendet?

A

Skriptprogrammierung, Webprogrammierung

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Wie unterscheiden sich Java und Python?

A

Python im Vergleich zu Java:
Zeileneinrückung in Python Bestandteil der Syntax
kein Compiler
kein ; am Zeilenende

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Was ist ein Compiler?

A

Übersetzungsprogramm, das maschinenlesbaren Code erzeugt aka Binärcode

Python NICHT

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Wie werden Kommentare bei Python eingefügt?

A
#
gelten für ganze Zeile
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was muss zwingend zu Beginn in den Code, wenn Python und HTML in 1 Quellcodedatei sein sollen?

A

print(“Content-type: text/html”)

damit Brwoser das als HTML Seite erkennt

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Wie werden in Python mehrzeilige Ausgaben programmiert?

A

print(“””

“””)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Wie fängt jede Python-Datei oben an?

A
#!python
#-*- encoding:utf-8 -*-

import cgi (Schnittstelle)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Wie werden HTML Antworten für den Browser in der Python-Datei programmiert?

A

print(“Content-type:text/html”)

print()

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Wie werden Formulareingaben mit Python verarbeitet?

A

Absenden des Formulars ruft serverseitiges Skript auf

form=cgi.FieldStorage()
varibale = form.getvalue(“variable”, “defaultwert”)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Was liefert form.getvalue()?

A

liefert immer String, auch bei Zahleneingaben, weil URLs keine Datentypen kennen

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Was passiert, wenn nicht angekreuzte Chechboxen/Radio Buttons gesendet werden?

A

liefert none

-> kein leerer String!

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Wie kann man vermeiden, dass der String none ist?

A

mit if Abfrage

Defaultwert angeben

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Wie kann man mit Zahleingaben rechnen?

A

String muss in Zahl umgewandelt werden

Ganzzahl: int(form.getvalue(“stringvariable”))
Fließkommazahl: float(form.getvalue(“stringsvariable”)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Was sind Fließkommazahlen?

A

Zahlen, die sehr groß oder sehr klein sind, die sich nicht als Ganzzahlen darstellen lassen und gebrochene Werte enthalten

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Welche 2 Möglichkeiten gibt es für formularbasierte Webanwendungen?

A
  1. 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
  2. Möglichkeit
    Startseite index.html leitet direkt auf Python-Seite weiter (mit meta http-equiv=””)
17
Q

Welche Nachteile hat die reine Python Lösung?

A

HTML Code wird mittels print() Befehlen ausgegeben
schwer lesbar
Formatierung kaum noch möglich
Vermischung von HTML-Inhalten und Programmlogik

18
Q

Was ist cgi?

A

cgi steht für common gateaway interface und stellt die Kommunikations-Schnittstelle zwischen Webserver und Drittsoftware dar, die Anfragen bearbeitet

19
Q

Wie können Anführungsstriche/Apostrophe in Python ausgegeben werden?

A

escapen mit Backslash

"Hallo”\

20
Q

Wie kann ein Backslash ausgegeben werden in Python?

21
Q

Welche internen Datentypen gibt es in Python?

A

Boolean: bool -> true und false

Ganzzahl: int -> beliebig viele Ziffern

Fließkommazahl: float

Zeichenkette: str

Array von Werten: list

Assoziatives Array: dict

22
Q

Welche Typumwandlung findet automatisch statt?

A

int -> float

23
Q

Wie kann der Datentyp einer Variablen geprüft werden?

A

Bedingungsabfrage

b = true
if type(b) == bool:
print("b ist vom Typ Boolean")
else:
print("b ist nicht vom Typ Boolean")
24
Q

Welche String Vergleiche gibt es?

A

true wenn gleicher Inhalt: a == b
true wenn unterschiedlicher Inhalt: a!=b
true wenn kleiner/vorher: a<b></b>

25
Was ist ein Shebang?
#! gibt Programm an, mit dem dieses Skript ausgeführt werden soll 1. Zeile von jeder Python Datei: #!python -> Ausführung von Python-Interpreter
26
Was gibt die 2. Zeile von jeder Python-Datei an?
legt Zeichensatz fest, mit dem diese Skriptdatei gespeichert ist -*- encoding: utf-8 -*-
27
Welcher Vorgang beim Absenden des Formulars?
ruft Skript im Web Server per HTTP-Protokoll auf alle Formulariengaben zwischen form und /form per CGI Schnittstelle zugreifbar und werden als string übermittelt
28
Was passiert mit leeren EIngabefelder nach dem Absenden des Formulars?
wird gar nichts übermittelt, als ob Eingabefeld nciht vorhanden wäre kann zu Fehlern bei serverseitiger Verarbeitung führen
29
Wie bekommt Python Zugriff auf die Formular-Eingabefelder
zugang zu GET/POST Paramtern über cgi Schnittstelle: form = cgi.FieldStorage() Variablen in Python definieren und Zugriff auf Formulareingaben definieren varname1 = form.getvalue("") varname2 = form.getvalue("")
30
Wie kann vermieden werden, dass es zu Problemen kommt, wenn ein Formularfeld nicht ausgefüllt wurde?
required="required" wenn nicht required, dann unbedingt defaultwert bei der Variablendefinition angeben: varname1 = form.getvalue("varname", "0")