2017-05-07 6 views
3

Ich soll eine Klasse namens Employee schreiben, die die Daten von Name, Gehalt und Jahren des Dienstes enthält. Er berechnet die monatliche Rentenauszahlung, die der Mitarbeiter im Ruhestand erhält, und zeigt die drei Instanzvariablen der Mitarbeiterobjekte an. Sie ruft auch die Pensionsmethode des Employee-Objekts auf, um die monatliche Rentenauszahlung dieses Mitarbeiters zu berechnen und auch anzuzeigen.Erhalten keine Ausgabe nach dem Ausführen von Python-Programm

Ich bekomme keine Ausgabe nach dem Ausführen meines Programms, und das ist das spezifische Problem.

Ich soll so etwas wie dies als Ausgabe erhalten:

Name: Joe Chen 
Salary: 80000 
Years of service: 30 
Monthly pension payout: 3600.0 

Process finished with exit code 0 

Hier wird der vollständige Code ist.

class Employee: 


    # init method implementation 
    def __init__(self, EmpName, EmpSalary, EmpYos): 
     self.EmpName = EmpName 
     self.EmpSalary = EmpSalary 
     self.EmpYos = EmpYos 

    def displayEmployeeDetails(self): 
     print "\nName ", self.EmpName, 

    # defines the salary details 
    def displaySalary(self): 
     print "\nSalary", self.EmpSalary 

    # defines the years of service 
    def displayYoservice(self): 
     print "\nYears of Service", self.EmpYos 

    # defines pension 
    def MonthlypensionPayout(self): 
     print "\nMonthly Pension Payout:", self.EmpSalary * self.EmpYos * 0.0015 


def main(): 


    # creates instance for employee 1 
    Emplo1 = Employee("Joe Chen", 80000, 30) 
    # creates instance for employee 2 
    Emplo2 = Employee("Jean park", 60000, 25) 

    # Function calls 
    Emplo1.displayEmployeeDetails() 
    Emplo1.displaySalary() 
    Emplo1.displayYoservice() 
    Emplo1.MonthlypensionPayout() 
    # function calls 
    Emplo2.displayEmployeeDetails() 
    Emplo2.displaySalary() 
    Emplo2.displayYoservice() 
    Emplo2.MonthlypensionPayout() 

main() 
+0

Was ist Ihre Python-Version? – Exprator

+0

entfernen Sie das def main: und main() – Exprator

+0

@Exprator Ich denke, die Version von Python ist 2, weil er ohne Klammern druckt. –

Antwort

5

Sie drucken gerade eine leere Zeile. Ändern Sie Ihre Funktionen an die unten:

def displayEmployeeDetails(self): 

    print \ 
    "\nName ", self.EmpName 

# defines the salary details 
def displaySalary(self): 


print \ 
"\nSalary", self.EmpSalary 

# defines the years of service 
def displayYoservice(self): 


print \ 
"\nYears of Service", self.EmpYos 

Die \ in Python Linie Fortsetzung ist. Noch besser wäre es alle von ihm auf der gleichen Zeile setzen wie so:

def displayEmployeeDetails(self): 

    print "\nName ", self.EmpName 

# defines the salary details 
def displaySalary(self): 


print "\nSalary", self.EmpSalary 

# defines the years of service 
def displayYoservice(self): 


print "\nYears of Service", self.EmpYos 

Siehe demo.

Verwandte Themen