Acer1968

Více instancí třídy jako pole

Jul 12th, 2021 (edited)
362
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.29 KB | None | 0 0
  1. class Person:
  2.     _num_of_peoples = 0
  3.  
  4.     def __init__(self, name, surname):
  5.         self.name = name
  6.         self.surname = surname
  7.         Person._num_of_peoples += 1
  8.  
  9.     def invite_yourself(self):
  10.         print(f"How are you, {self.name} {self.surname}?")
  11.  
  12.     def __str__(self):
  13.         response = f"This is {self.name} {self.surname} speaking...\n" + "-" * (21 + len(self.name) + len(self.surname))
  14.         return response
  15.  
  16.     @classmethod
  17.     def get_num_of_peoples(cls):
  18.         return cls._num_of_peoples
  19.  
  20. if __name__ == "__main__":
  21.     peoples_arr = [["Mirek","Mínusový"],["Naďa","Nultá"]]
  22.     peoples_obj = []
  23.     peoples_arr.append(["Petr", "První"])
  24.     peoples_arr.append(["Dana", "Druhá"])
  25.     peoples_arr.append(["Tomáš", "Třetí"])
  26.     print("Peoples for registration:", len(peoples_arr),"\n",peoples_arr)
  27.     counter = 0
  28.     for item in peoples_arr:
  29.         peoples_obj.append(Person(item[0], item[1]))
  30.         counter += 1
  31.         print(f"People {counter} registered...")
  32.     print("Number of registered peoples: ", Person.get_num_of_peoples())
  33.     print("Result is an array of Person type´s objects:\n", peoples_obj)
  34.     for item in peoples_obj:
  35.         print(f"Name: {item.name}, Surname: {item.surname}")
  36.         item.invite_yourself()
  37.         print(item)
Add Comment
Please, Sign In to add comment