diff --git a/python/labf/lab_f_p1_Joseph_Green.py b/python/labf/lab_f_p1_Joseph_Green.py new file mode 100644 index 0000000..2b3a0bc --- /dev/null +++ b/python/labf/lab_f_p1_Joseph_Green.py @@ -0,0 +1,78 @@ +class Person: + def __init__(self, firstName, lastName, email): + self.firstName = firstName + self.lastName = lastName + self.email = email + + def getFullName(self): + return self.firstName + " " + self.lastName + + +class Customer(Person): + def __init__(self, firstName, lastName, email, number): + Person.__init__(self, firstName, lastName, email) + self.number = number + +class Employee(Person): + def __init__(self, firstName, lastName, email, ssn): + Person.__init__(self, firstName, lastName, email) + self.ssn = ssn + +def main(): + print("Customer/Employee Data Entry") + print() + + while True: + choice = input("Customer or Employee? (c/e): ") + print() + + if choice == 'c': + customer = get_input(choice) + print() + display(customer) + elif choice == 'e': + employee = get_input(choice) + print() + display(employee) + else: + print("Invalid choice. Please try again.") + continue + + again = input("Continue? (y/n): ").lower() + print() + if again != "y": + break + + print("Bye!") + +def get_input(choice): + print("DATA ENTRY") + first_name = input("First name: ") + last_name = input("Last name: ") + email = input("Email: ") + if choice == 'c': + number = input("Number: ") + customer = Customer(first_name, last_name, email, number) + return customer + elif choice == 'e': + ssn = input("SSN: ") + employee = Employee(first_name, last_name, email, ssn) + return employee + +def display(person): + if isinstance(person, Customer): + print("CUSTOMER") + elif isinstance(person, Employee): + print("EMPLOYEE") + else: + print("PERSON") + + print("First name: " + person.firstName) + print("Last name: " + person.lastName) + print("Email: " + person.email) + if isinstance(person, Customer): + print("Number: " + person.number) + elif isinstance(person, Employee): + print("SSN: " + person.ssn) + print() + diff --git a/python/labf/lab_f_p2_Joseph_Green.py b/python/labf/lab_f_p2_Joseph_Green.py new file mode 100644 index 0000000..a79f291 --- /dev/null +++ b/python/labf/lab_f_p2_Joseph_Green.py @@ -0,0 +1,128 @@ +# Allow for generic person -- +# add student class -- +# be able to save results to a file +# write the display to a file, use append instead of write + + +def write_file(line): + #add write block + with open("data.txt", 'a') as output_file: + output_file.write(line) + output_file.write("\n") + +class Person: + def __init__(self, firstName, lastName, email): + self.firstName = firstName + self.lastName = lastName + self.email = email + + def getFullName(self): + return self.firstName + " " + self.lastName + +class Customer(Person): + def __init__(self, firstName, lastName, email, number): + Person.__init__(self, firstName, lastName, email) + self.number = number + +class Employee(Person): + def __init__(self, firstName, lastName, email, ssn): + Person.__init__(self, firstName, lastName, email) + self.ssn = ssn +#Adding Student +class Student(Person): + def __init__(self, firstName, lastName, email, gpa): + Person.__init__(self, firstName, email, gpa) + self.gpa = gpa + +def main(): + print("Customer/Employee Data Entry") + print() + + while True: + choice = input("Customer, Employee, Student, or Other? (c/e/s/o): ") + print() + + if choice == 'c': + customer = get_input(choice) + print() + display(customer) + elif choice == 'e': + employee = get_input(choice) + print() + display(employee) + elif choice == 's': + student = get_input(choice) + print() + display(student) + elif choice == 'o': + other = get_input(choice) + print() + display(other) + else: + print("Invalid choice. Please try again.") + continue + + again = input("Continue? (y/n): ").lower() + print() + if again != "y": + break + + print("Bye!") + +def get_input(choice): + print("DATA ENTRY") + first_name = input("First name: ") + last_name = input("Last name: ") + email = input("Email: ") + if choice == 'c': + number = input("Number: ") + customer = Customer(first_name, last_name, email, number) + return customer + elif choice == 'e': + ssn = input("SSN: ") + employee = Employee(first_name, last_name, email, ssn) + return employee + elif choice == 's': + gpa = input("GPA: ") + student = Student(first_name, last_name, email, gpa) + return student + elif choice == 'o': + other = Person(first_name, last_name, email) + return other + +def display(person): + if isinstance(person, Customer): + print("CUSTOMER") + write_file("CUSTOMER") + elif isinstance(person, Employee): + print("EMPLOYEE") + write_file("EMPLOYEE") + elif isinstance(person, Student): + print("STUDENT") + write_file("STUDENT") + else: + print("Other") + write_file("Other") + + print("First name: " + person.firstName) + print("Last name: " + person.lastName) + print("Email: " + person.email) + + #Write generic contents to file + write_file("First name: " + person.firstName) + write_file("Last name: " + person.lastName) + write_file("Email: " + person.email) + + if isinstance(person, Customer): + print("Number: " + person.number) + write_file("Number: " + person.number) + + elif isinstance(person, Employee): + print("SSN: " + person.ssn) + write_file("SSN: " + person.ssn) + elif isinstance(person, Student): + print("GPA: " + person.gpa) + write_file("GPA: " + person.gpa) + write_file("") + + print()