Advertisement
Guest User

Untitled

a guest
Dec 6th, 2019
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.20 KB | None | 0 0
  1. class RetailItem:
  2. def __init__(self, item, units, price):
  3. self.__item = item
  4. self.__units = units
  5. self.__price = price
  6.  
  7. def get_price(self):
  8. return self.__price
  9.  
  10. def get_units(self):
  11. return self.__units
  12.  
  13. def get_item(self):
  14. return self.__item
  15.  
  16. def remove_unit(self):
  17. self.__units = self.__units - 1
  18.  
  19. # def remove_quantity(self):
  20. # del self.__item
  21. # del self.__units
  22. # del self.__price
  23.  
  24. def __str__(self):
  25. return f'[{self.__item}, {self.__units}, {self.__price}]'
  26.  
  27. def __repr__(self):
  28. return self.__str__()
  29.  
  30. class CashRegister:
  31. def __init__(self):
  32. self.__list = []
  33.  
  34. def scan_item(self, retailItem):
  35. self.__list.append(retailItem)
  36.  
  37. def get_total(self):
  38. total = 0
  39. for item in self.__list:
  40. total += item.get_price()
  41. return format(total, ',.2f')
  42.  
  43. def show_items(self):
  44. acc = 0
  45. for item in self.__list:
  46. acc += 1
  47. print('Item #', acc, ' ',item.get_item(),', ', item.get_units(), ' left.', ' Price is ', '$', item.get_price(), '.', sep='')
  48.  
  49. def purchase(self):
  50. self.show_items()
  51. print('The total is: $', self.get_total(), sep='')
  52. # for item in self.__list:
  53. # item.remove_quantity()
  54. for item in self.__list:
  55. item.remove_unit()
  56. self.__list.clear()
  57. print(self.__list)
  58.  
  59.  
  60. def main():
  61. item1 = RetailItem('Jacket', 12, 59.95)
  62. item2 = RetailItem('Designer Jeans', 40, 34.95)
  63. item3 = RetailItem('Shirt', 20, 24.95)
  64. item_list = [item1, item2, item3]
  65. cash_register = CashRegister()
  66. for item in item_list:
  67. cash_register.scan_item(item)
  68. # print(cash_register.get_total())
  69. # print(item_list)
  70. # print(cash_register.show_items())
  71. # cash_register.show_items()
  72. cash_register.purchase()
  73. item4 = RetailItem('Socks', 34, 14.55)
  74. item5 = RetailItem('Tuxedo', 7, 184.22)
  75. item6 = RetailItem('Dress', 17, 42.85)
  76. item_list = [item4, item5, item6]
  77. cash_register = CashRegister()
  78. for item in item_list:
  79. cash_register.scan_item(item)
  80. cash_register.purchase()
  81.  
  82.  
  83. #main()
  84.  
  85.  
  86. class Employee:
  87. def __init__(self, name, id_num, h_pay, h_worked):
  88. self.__name = name
  89. self.__id_num = id_num
  90. self.__h_pay = h_pay
  91. self.__h_worked = h_worked
  92.  
  93. def pay_day(self):
  94. pay = self.h_pay * self.h_worked
  95. self.h_worked = 0
  96. return pay
  97.  
  98. def __str__(self):
  99. return f'{self.__name}, {self.__id_num}, {self.__h_pay}, {self.__h_worked}'
  100.  
  101. def __repr__(self):
  102. return self.__str__()
  103.  
  104.  
  105. class Shiftworker(Employee):
  106. def __init__(self, name, id_num, h_pay, h_worked, shift, vac_h, sick_h):
  107. super().__init__(name, idnum, hpay)
  108. self.__shift = shift
  109. self.__vac_h = vac_h
  110. self.__sick_h = sick_h
  111.  
  112. def pay_day(self):
  113. super().pay_day()
  114. return (self.__vac_h + self.__sick_h) * self.__h_pay
  115.  
  116. employee = Employee('David', 1234, 60, 50)
  117. print(employee.pay_day)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement