How call method from a method in same class?
Dave
dboland9 at offilive.com
Mon Apr 1 22:02:11 EDT 2019
As classes get more complex, it is good to call a function to do some of
the processing, and make the code easier to follow. My question is how
to do that? I've attached some silly code to illustrate the point. The
error is: name 'validScale' is not defined. Well, yes it is, but maybe
not the correct way. Suggestions?
Dave,
class TempConverter():
""" Temperature Converter converts a tempeature from one scale
to another scale. For example: 32, F, C will return
0 degrees C
"""
def __init__(self, temperature, scale, newScale):
self.temperature = temperature
self.scale = scale
self.newScale = newScale
def validScale(self, scaleName):
if scaleName.upper == 'F' or 'C' or 'K':
return True
else:
return False
def convertTemp(self):
""" Converts temperature scale if scales valid."""
if validScale(self.scale):
scaleValid = True
if validScale(self.newScale):
newScaleValid = True
if scaleValid and newScaleValid:
print('Scale converted')
else:
msg = "There was and error with the scales entered.\n"
msg = msg + "You entered: " + self.scale
msg = msg + ' ' 'and' + self.newScale
print(msg)
if __name__ == "__main__":
myclass = TempConverter(32, 'f', 'c')
myclass.convertTemp()
More information about the Python-list
mailing list