ja schon mal mein script vorgestellt.
der unterschied zu diesem script ist das hier nun die zehn zufällig erzeugten
zwerge in einer liste gespeichert werden und ebenfalls wider ausgegeben werden
also hier ist mal der neue scriptcode:
Code: Alles auswählen
#Obersteklasse,welche die Steuern ausrechnet und sonst alle informationen über die hofzbediensteten festlegtt
class hofburg:
def __init__(self):
self.name=''
self.basisfreibetrag=10
self.freibetrag=0
self.steuerbetrag=0
self.nettogehalt=0
def berechnung(self):#Prozedur um die Steuern vom Gehalt abzuziehen
self.freibetrag=self.basisfreibetrag+self.zusatzfreibetrag
if self.bruttogehalt > 13:
self.steuerbetrag=(self.bruttogehalt-self.freibetrag)*45/100 #Formel um die Steuer zu berechnen
else:
self.freibetrag=self.bruttogehalt
self.nettogehalt=self.bruttogehalt-self.steuerbetrag
def ausgabe(self):
print 'Nummer des Zwerges:'+str(self.name)
print 'Beruf:'+str(self.z)
print 'Bruttogehalt:'+str(self.bruttogehalt)
print 'Basisfreibetrag:'+str(self.basisfreibetrag)
print 'Zusatzfreibetrag:'+str(self.zusatzfreibetrag)
print 'Freibetrag:'+str(self.freibetrag)
print 'Steuer:'+str(self.steuerbetrag)
print 'Nettogehalt:'+str(self.nettogehalt)
#Basisklasse der Hofzwerge
class hofzwerge(hofburg):
def __init__(self):
hofburg.__init__(self)
#Hofzwerge 1.Klasse
class hofzwerg1klasse(hofzwerge):
def __init__(self):
self.z='Hofzwerg 1.Klasse'
self.bruttogehalt=35
self.zusatzfreibetrag=3
hofzwerge.__init__(self)
#Hofzwerge 2.Klasse
class hofzwerg2klasse(hofzwerge):
def __init__(self):
self.z='Hofzwerg 2.Klasse'
self.bruttogehalt=45
self.zusatzfreibetrag=4
hofzwerge.__init__(self)
#Basisklass der Zeitarbeiter(Achtung diese Arbeiter werden nach Arbeitszeit bezahlt)
class zeitarbeiter(hofburg):
def __init__(self):
self.zusatzfreibetrag=3
hofburg.__init__(self)
#Klasse der Kammerkaligraphen
class kammerkaligraph(zeitarbeiter):
def __init__(self):
self.z='Kammerkaligraph'
self.stundenlohn=2
self.stundenanzahl=1
self.bruttogehalt=self.stundenlohn*self.stundenanzahl #Berechnung des Gehaltes
zeitarbeiter.__init__(self)
#Klasse der Hofpompfuenbristen
class hofpompfuenebristen(zeitarbeiter):
def __init__(self):
self.z='Hofpompfuenebristen'
self.stundenlohn=8
self.stundenanzahl=1
self.bruttogehalt=self.stundenanzahl*self.stundenlohn
zeitarbeiter.__init__(self) #Basisklasse wird als Prozedur in der Unterklasse aufgeführtt
# Hier beginnt das eigentliche script denn hier werden nun die Bediensteten entwickelt
import random
l=[]
for i in range(1,11):
x = random.randint(1, 4)
if x==1:
z=hofzwerg1klasse()
l.append(z)
elif x==2:
z=hofzwerg2klasse()
l.append(z)
elif x==3:
z=kammerkaligraph()
l.append(z)
elif x==4:
z=hofpompfuenebristen()
l.append(z)
z.name = i
z.berechnung()#Steuer des jeweiligen Zwerges wird berechnet
z.ausgabe()#Ausgabe der Steuern mit der dazugehörigen Nummer des Zwerges
das diese sachen geordnet in einer tabelle im ausgabefenster ausgeben werden
jedenfalls habe ich schon gehört das geht auch mit tkinter aber unser lehrer will das nicht, warum auch immer, wnaja kenne mich mit tkinter auch ncoh nicht aus.
jedenfalls hat er uns dann auf die libary reference in python >index>% formatting hingewiesen, aber ich werde darus nicht schlau und meine mitschüler auch nicht. jedenfalls wollte ich euch mal um hilfe bitten, d.h. nur um einen hinweis oder so oder ein beispiel, denn in der wiki und durch die forumsuche habe ich nichts gefunden.
habe nochmal ein bild angehängt wie sich das mein lehrer vorstellt:
http://www.sebastians-home.de/tabelle.gif