Zum Inhalt

Python

Python-Basics

Mit Python kann man Computerprogramme schreiben. Ein Programm ist der Text, der der dummen Hardware sagt, was sie tun soll. Also zum Beispiel soll der Bildschirm "Hallo" schreiben. Das Programm ist dabei nicht nur Code, sondern besteht quasi aus Gedanken.

Python-Konsole

Python-Konsole starten mit python oder python3 und sie beenden mit Strg+D. Den Bildschirm leeren geht mit Strg+L.

python3

print('Hallo Welt!')

help

Hilfe zu vorhandenen Funktionen erhält man mit help(). Beenden der Hilfe mit q.

help(len)

So schreibt man etwas:

print('Dor' + 'Keinath') print(1000*'DorKeinath ')

So liest man einen Text in die Variable a ein:

a = input('Gib etwas ein:')

import, asctime, subprocess

Importieren weiterer Funktionen aus noch nicht geladenen Pakten

1
2
import time
print(time.asctime())

oder für einzelne Funktionen:

1
2
from time import asctime
print(asctime())

Weiteres Beispiel: Um den Bildschirm zu löschen, kannst du den folgenden Code verwenden:

1
2
from subprocess import call
call("clear")

(Früher hat man from os import system und system("clear") oder os.popen verwendet. Weitere Informationen zu subprocess, weitere Methoden Terminal-Befehle durch Python auszuführen.)

Python-Skript

Ein ganzes Python-Skript bzw. Python-Programm test.py schreiben und mit python3 test.py (oder - falls das Shabang vorhanden ist - mit ./test.py) starten.

1
2
3
4
#!/usr/bin/env python3

name = input('Wie heißt du? ')
print('Hallo ' + name + '!')

Typen

Typen benötigen manchmal besondere Aufmerksamkeit: Versuche, die Summe aus zwei abgefragten Zahlen ausgeben zu lassen.

type(3.2)

1
2
3
4
5
6
7
8
#!/usr/bin/env python3

erste_eingabe = input('Erster Summand: ')
zweite_eingabe = input('Zweiter Summand: ')
a = float(erste_eingabe)
b = float(zweite_eingabe)
s = a + b
print('Die Summe ist: ' + str(s))

Exkurs zu den Bytsequenzen

Mögliches GFS-Thema

Es gibt verschiedene Zeichentabellen. Die älteste heißt ASCII; sie enthält nur 128 Zeichen. Die größte Zeichentabelle heißt Unicode und ihre bekannteste Kodierung (engl. "encoding") heißt UTF-8. Python3 definiert Strings (str) als Unicode-Text. Man kann aber auch angeben, wie Text gespeichert werden soll.

1
2
3
>>> text = bytes('Blöde Buchstaben wie äöüß', 'utf-8')
>>> text
b'Bl\xc3\xb6de Buchstaben wie \xc3\xa4\xc3\xb6\xc3\xbc\xc3\x9f'

Das b bei der Ausgabe von text bedeutet, dass das darauf Folgende ein Bytestring ist.

1
2
>>> text.decode("utf-8")
>>> 'Blöde Buchstaben wie äöüß'

Arbeitsaufträge

Begrüßung

Schreibe ein Python-Skript, das den Aufrufer nach seinem Namen fragt und ihn dann mit seinem Namen und der aktuellen Uhrzeit begrüßt, z.B. "Hallo Python, es ist 12:45 Uhr."

Um die Uhrzeit schön zu formatieren, kannst du aus dem Modul time die Funktion strftime verwenden:

1
2
from time import strftime
print(strftime("%d %b %Y %H:%M:%S"))
(Mehr zur Funktion strftime)

Potenz-Berechner

Schreibe ein Python-Skript, das den Aufrufer nach einer Basis und einem Exponenten fragt und dann die Potenz berechnet und ausgibt. Hinweis: 2**3 ergibt 8.

Kreis-Berechner

Schreibe ein Python-Skript, das den Aufrufer nach einem Radius oder Durchmesser eines Kreises fragt und damit den Umfang und Inhalt des Kreises berechnet und ausgibt. Hinweis: Du kannst Pi aus dem Paket math verwenden

1
from math import pi

Terminal-Programm (Für Fortgeschrittene)

Schreibe eines der beiden obigen Programme als Terminal-Programm