Mám úkol, kdy mám vytvořit třídu pro Zaměstnance, číst v textovém souboru, který obsahuje informace o zaměstnancích uložit jako objekt, číst v hodinách pracoval souboru a vytvořit platební informace slovníku ze souborů. Takže, zatím se zdá být v pořádku tak dlouho, jak jejich je jen jeden zaměstnanec zaměstnanec textový soubor, ale hned jak jsem se patří a za druhé, první se přepíše a informací pro druhé je to, co vytvořil. To je některé z informací, které zatím mám:
class Staff:
staffData = {}
def __init__(self, EmpID, LName, FName, RHours, HRate, OTMult, TaxC, SBand, Date, HrsWorked):
self.EmpID = EmpID
self.LName = LName
self.FName = FName
self.RHours = RHours
self.HRate = HRate
self.OTMult = OTMult
self.TaxC = TaxC
self.SBand = SBand
self.Date = Date
self.HrsWorked = HrsWorked
Staff.staffData[EmpID] = self
def setup(staff ,hrs): # staff and hrs are text files
with open(staff) as empFile:
for line in empFile:
SID, LN, FN, RH, HR, OTM, TC, SB = line.split()
with open(hrs) as hFile:
for line in hFile:
SID, date, HrsWorked = line.split()
stf = Staff(SID, LN, FN, int(RH), int(HR), float(OTM), int(TC), int(SB),date, HrsWorked)
return stf
def paySlip(self,HrsWorked, date):
paymentDict = {}
#creates paySlip using information from instance and creates others by performing
calculations
return paymentDict
jg = Staff.setup('Staff.txt', 'Hrs.txt')
dic = jg.paySlip(42,'31/10/2021')
print(dic)
To je to, co jsem tak daleko, a vrátí správný výsledek, ale když jsem zahrnovat druhý řádek s druhým členem personálu, který je tam, kde mám problémy. Také, jen poznámka, parametry pro výplatní pásku musí být datum a počet odpracovaných hodin z hodin textovém souboru a ne jen textový soubor. Jsem poměrně nový na programování, takže se omlouvám, pokud to je základní oprava, jsem strávil poslední 3 dny se snažím na to přijít tím, že navštívíte různé desky a webových stránek. Jakýkoliv pomoci chtěl bych být ocenil.