Donnerstag, 29. Oktober 2009

 

newprog.py - erzeugen eines Programmgerüsts

Neue Programmdateien haben im Allgemeinen eine ziemlich fixe (Anfangs-)Struktur. So wird immer ein Programmkopf (Kommentar) benötigt, der den Namen des Autors und andere Informationen enthält. Für Python sieht das z.B. so aus:


#!/usr/bin/python
# -"- coding: UTF-8 -*-
# newprog.py
# Ein neues Programmfile mit Header anlegen.
# 2006-09-28, Maier Maria, 23, d84123, 5AHDVK

Schreiben Sie ein Pythonprogramm newprog.py, welches aus einer Vorgabedatei so ein Programmgerüst erzeugt. In dieser Vorgabedatei gibt es Wörter, die dann von newprog.py durch die entsprechenden Werte ersetzt werden. Obiges Gerüst ist aus folgender Vorgabedatei entstanden:


#!/usr/bin/python
# -"- coding: UTF-8 -*-
# NAME
# ZWECK
# DATUM, AUTOR, KNR, EVIDENZ, KLASSE

Für die Ersetzungen soll ein Dictionary verwendet werden, z.B.:


ersetzungen = {
"NAME": progname,
"ZWECK": zweck,
"DATUM": datum,
"AUTOR": "Maier Maria",
"KNR": "23",
"EVIDENZ": "d84123",
"KLASSE": "5AHDVK"
}

progname, zweck, datum müssen natürlich vorher bestimmt werden (eingegeben).

Zur Bestimmung des Datums verwenden Sie strftime():


from time import strftime
datum = strftime("%F")

strftime kennt verschiedenste Formatangaben und liefert die aktuelle Uhrzeit bzw. Datum formatiert zurück. Hilfe mit help(strftime) in Python bzw. man strftime von der Shell (liefert die Beschreibung der C-Funktion, aber die Formatangaben gelten auch für Python).

Die Vorgabedatei und der Name der zu erzeugenden Datei sind auf der Kommandozeile anzugeben, z.B.:


~/work/tmp > python newprog.py vorgabe.py meinNeuesProgramm.py
~/work/tmp >

Wird keine Vorgabedatei angegeben, so wird eine Standardvrogabedatei verwendet:


~/work/tmp > python newprog.py meinNeuesProgramm.py
~/work/tmp >

Für die Programmargumente betrachten Sie folgendes Beispiel, welches die Argumente einfach untereinander ausgibt:


#!/usr/bin/python
# -"- coding: UTF-8 -*-
# argtest.py
from sys import argv
for arg in argv:
print arg

Ausgabe bei Aufruf von python argtest.py hallo du da:

argtest.py
hallo
du
da

Das heißt, argv[0] enthält den Programmnamen.

Abgabetermin: 4. November 2009

Labels: , ,


Kommentare:

Kommentar veröffentlichen

Abonnieren Kommentare zum Post [Atom]





<< Startseite

This page is powered by Blogger. Isn't yours?

Abonnieren Posts [Atom]