You are on page 1of 2

class EmpNameDescriptor:

def __get__(self, obj, owner):


return self.__empname

def __set__(self, obj, value):


if not isinstance(value, str):
raise TypeError("'empname' must be a string.")
self.__empname = value

class EmpIdDescriptor:
def __get__(self, obj, owner):
return self.__empid

def __set__(self, obj, value):


if hasattr(obj, 'empid'):
raise ValueError("'empid' is read only attribute")
if not isinstance(value, int):
raise TypeError("'empid' must be an integer.")
self.__empid = value

class Employee:
empid = EmpIdDescriptor()
empname = EmpNameDescriptor()
def __init__(self, emp_id, emp_name):
self.empid = emp_id
self.empname = emp_name

e1 = Employee(123456, 'John')
print(e1.empid, '-', e1.empname)
e1.empname = 'Williams'
print(e1.empid, '-', e1.empname)
e1.empid = 76347322

class Employee:
def __init__(self, emp_id, emp_name):
self.empid = emp_id
self.empname = emp_name
def getEmpID(self):
return self.__empid
def setEmpID(self, value):
if not isinstance(value, int):
raise TypeError("'empid' must be an integer.")
self.__empid = value
empid = property(getEmpID, setEmpID)

class Employee:
def __init__(self, emp_id, emp_name):
self.empid = emp_id
self.empname = emp_name
@property
def empid(self):
return self.__empid
@empid.setter
def empid(self, value):
if not isinstance(value, int):
raise TypeError("'empid' must be an integer.")
self.__empid = value
@property
def empname(self):
return self.__empname
@empname.setter
def empname(self, value):
if not isinstance(value, str):
raise TypeError("'empname' must be a string.")
self.__empname = value
@empname.deleter
def empname(self):
del self.__empname

#!/bin/python3

import sys
import os

# Add Celsius class implementation below.


class Celsius:
def __get__(self,obj,val):
return float(self.celsius)

def __set__(self,obj,val):
self.celsius=val

# Add temperature class implementation below.


class Temperature:
celsius=Celsius()
def __init__(self,value):
self.fahrenheit=value
self.celsius=(value-32)*(5/9)

'''Check the Tail section for input/output'''

if __name__ == "__main__":
with open(os.environ['OUTPUT_PATH'], 'w') as fout:
res_lst = list()
t1 = Temperature(int(input()))
# res_lst.append((t1.fahrenheit, t1.celsius))
t1.celsius = int(input())
res_lst.append((t1.fahrenheit,t1.celsius))
fout.write("{}\n{}".format(*res_lst))

You might also like