-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy paths_good.py
More file actions
35 lines (29 loc) · 855 Bytes
/
Copy paths_good.py
File metadata and controls
35 lines (29 loc) · 855 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
class User:
def __init__(self, name, last_name, age):
self.name = name
self.last_name = last_name
self.age = age
@property
def age(self):
return self._age
# Setter for age includes validation.
@age.setter
def age(self, age):
if age < 0or age >= 130:
raise ValueError("Age must be between 0 and 130 ")
self._age = age
# Console class handles user I/O operations.
class Console:
@staticmethod
def display(obj):
print(f"{obj.name}{obj.last_name}{obj.age}")
@staticmethod
def input():
name = input("Input name:")
last_name = input("Input last name:")
age = int(input("Input age:"))
return User(name, last_name, age)
obj = User("Bill", "Windows", 34)
Console.display(obj)
obj = Console.input()
Console.display(obj)