Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Every Person is Unique by mazeua
import datetime
class Person:
def __init__(self, first_name, last_name, birth_date, job, working_years, salary, country, city, gender='unknown'):
self.first_name = first_name
self.last_name = last_name
self.birth_date = datetime.date(*list(map(int, birth_date.split(".")))[::-1])
self.job = job
self.working_years = working_years
self.salary = salary
self.country = country
self.city = city
self.gender = gender
def name(self):
return self.first_name + " " + self.last_name
def age(self):
return (((datetime.date(2018, 1, 1) - self.birth_date).days) // 365)
def work(self):
if self.gender == 'male':
return "He is a " + self.job
elif self.gender == "female":
return "She is a " + self.job
else:
return "Is a " + self.job
def money(self):
salary = str(int(self.working_years * self.salary*12))[::-1]
s = ''
for x in range(len(str(salary))):
if (x + 1) % 3 == 0:
s += salary[x] + " "
else:
s += salary[x]
return s[::-1].strip()
def home(self):
return "Lives in {0}, {1}".format(self.city, self.country)
if __name__ == '__main__':
#These "asserts" using only for self-checking and not necessary for auto-testing
p1 = Person("John", "Smith", "19.09.1979", "welder", 15, 3600, "Canada", "Vancouver", "male")
p2 = Person("Hanna Rose", "May", "05.12.1995", "designer", 2.2, 2150, "Austria", "Vienna")
assert p1.name() == "John Smith", "Name"
assert p1.age() == 38, "Age"
assert p2.work() == "Is a designer", "Job"
assert p1.money() == "648 000", "Money"
assert p2.home() == "Lives in Vienna, Austria", "Home"
print("Coding complete? Let's try tests!")
March 1, 2019