#!/usr/bin/env python
# -*- coding: iso-8859-15 -*-

# telefonbuch.py, v1.0 (2011/03/31)
# Betriebssysteme I, SS 2011
# Hans-Georg Eßer

lookup_name = {
  "Anton"  : "089-1234",
  "Berta"  : "089-5678",
  "Carl"   : "089-9012",
  "Dieter" : "089-1357" }

lookup_number = {
  "089-1234" : "Anton",
  "089-5678" : "Berta",
  "089-9012" : "Carl",
  "089-1357" : "Dieter"}


# Funktion show_help() zeigt Hilfe an
def show_help():
  print "Eingabe einer Nummer oder eines Namens zur Abfrage"
  print "Eingabe von LIST fuer vollstaendige Liste"
  print "Eingabe von ? oder HELP zeigt diese Hilfe an"
  print "Eingabe einer Leerzeile beendet Programm"

# Funktion ausgabe() gibt eine Zeile der Form  Name : Telefon aus
def ausgabe(name,telefon):
  print name, ":", telefon

# Funktion print_list() gibt das gesamte Telefonverzeichnis aus
def print_list():
  for name in lookup_name.keys():
    ausgabe( name, lookup_name[name] )

# Hauptprogramm
print "Telefonbuch"
print "-----------"
show_help()
print
while True:
  cmd = raw_input ("Eingabe: ")
  if cmd == "": break   # Schleife beenden bei leerer Eingabe
  if cmd == "?" or cmd == "HELP": show_help()
  elif cmd == "LIST": 
    print_list()
  elif lookup_name.has_key(cmd):   ausgabe ( cmd, lookup_name[cmd] )
  elif lookup_number.has_key(cmd): ausgabe ( lookup_number[cmd], cmd )
  # Ende der While-Schleife
print "Ende"
