Advertisement
nanorocks

oop_example_python

Nov 5th, 2017
722
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.86 KB | None | 0 0
  1. class Man:
  2.  
  3.     num1 = 0
  4.     tmp_id=3.3
  5.  
  6.     def __init__(self,fname,lname,id,email):
  7.         self.fname = fname
  8.         self.lname = lname
  9.         self.id = id
  10.         self.email = email
  11.         Man.num1 += 1 # counting instances
  12.  
  13.     def print_fullname(self):
  14.         return self.fname+" "+self.lname
  15.  
  16.     def id_multi(self):
  17.         return float(self.id * self.tmp_id)
  18.  
  19.     @classmethod
  20.     def set_tmp_id(cls,tmp_var):
  21.         cls.tmp_id = tmp_var
  22.  
  23.     @classmethod
  24.     def ret_new_obj(cls, str_tmp):
  25.         fr, ls, idp, em = str_tmp.split("-")
  26.         return cls(fr, ls, idp, em) # returning new object
  27.  
  28.     @staticmethod
  29.     def stat_date(d):
  30.         if d > 22 :
  31.             return True
  32.         return False
  33.  
  34. var_obj = Man("andrej","nankov",1,"an@gmail.com")
  35. var_obj1 = Man("filip","nankov",1,"fn@gmail.com")
  36.  
  37.  
  38. Man.set_tmp_id(4.4)
  39.  
  40. #print var_obj.print_fullname()
  41.  
  42. #print Man.num1
  43.  
  44. #print var_obj1.id_multi()
  45.  
  46.  
  47. man1 = "nano-rocks-5-an@gmail.com"
  48. man2 = "aco-babic-6-ab@gmail.com"
  49. man3 = "darko-gjo-7-dg@gmail.com"
  50.  
  51. fr, ls, idp, em = man2.split("-")
  52.  
  53. new_ins_man = Man(fr, ls, idp, em)
  54.  
  55. #print new_ins_man.print_fullname()
  56.  
  57.  
  58. #print (Man.stat_date(12))
  59.  
  60.  
  61.  
  62. class Dev(Man):
  63.  
  64.     def __init__(self, fname, lname, id, email, years):
  65.         Man.__init__(self,fname,lname,id,email)
  66.         self.years = years
  67.  
  68.     def __repr__(self):
  69.         return "--> "+self.print_fullname()+" "+str(self.id)+" "+str(self.email)+" "+str(self.years)
  70.  
  71.  
  72.     @property
  73.     def years_fu(self):
  74.         return str(self.years)+" "+"years" # "12 years"
  75.  
  76.     @years_fu.setter
  77.     def years_fu(self,years):
  78.         print "Setting"
  79.         self.years = years
  80. """
  81.    @years_fu.deleter
  82.    def years_fu(self, years):
  83.  
  84.        print ("Deleter year. ")
  85.        self.years = None
  86. """
  87. pom1 = Dev("aaa","bbb",13,"gmail.com",15)
  88.  
  89.  
  90. pom1.years_fu = 2
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement