New to coding and have a question. There is a part of this code that I don't understand and am wondering if anyone can clarify. The code works as it should but I do not understand this one piece. What is this part of the code doing?
filledTrue = (filled == 1)
I am guessing it is passing filledTrue to the Superclass if filled equals 1, but I have not seen code used like this yet so am not sure. Do the parentheses work like an If statement without the Else component?
Thanks so much!
Here is the full code:
class GeometricObject:
def __init__(self, color = "green" , filled = True):
self.__color = color
self.__filled = filled
def getColor(self):
return self.__color
def setColor(self, color):
self.__color = color
def isFilled(self):
return self.__filled
def setFilled(self, filled):
self.__filled = filled
def __str__(self):
return "color: " + self.__color + \
" and filled: " + str(self.__filled)
class Triangle(GeometricObject):
def __init__(self, side1 = 1.0 , side2 = 1.0, side3 = 1.0):
super().__init__()
self.__side1 = side1
self.__side2 = side2
self.__side3 = side3
def getSide1(self):
return self.__side1
def setSide1(self, side1):
self.__side1 = side1
def getSide2(self):
return self.__side2
def setSide2(self, side2):
self.__side2 = side2
def getSide3(self):
return self.__side3
def setSide3(self, side3):
self.__side3 = side3
def setArea(self):
self.area = area
def getArea(self):
s = (self.__side1 + self.__side2 + self.__side3) / 2
area = (s * (s - self.__side1) * (s - self.__side2) * (s - self.__side3)) ** 0.5
return area
def getPerimeter(self):
perimeter = self.__side1 + self.__side2 + self.__side3
return perimeter
def triangleString(self):
return "Triangle: Side 1: " + self.__side1 + "Side 2: " + self.__side2 + "Side 3: " + self.__side3
def main():
side1 = eval(input("Enter a number for side 1: "))
side2 = eval(input("Enter a number for side 2: "))
side3 = eval(input("Enter a number for side 3: "))
color = input("Enter a color for the triangle: ")
filled = eval(input("To fill the triangle, enter 1, otherwise enter 0: "))
filledTrue = (filled == 1)
#set the variables in the classes
triangleSolution = Triangle(side1, side2, side3) # this sets the triangle sides in Triangle Class
triangleSolution.setColor(color) # this sets the color in the superclass (through subclass)
triangleSolution.setFilled(filledTrue) # this sets the fill
#get the variables in the classes with printout
print("The triangle’s area is: ", triangleSolution.getArea(), '\n',
"The perimeter is: ", triangleSolution.getPerimeter(), '\n',
"The color is: ", triangleSolution.getColor(), '\n',
"The color is filled: ", triangleSolution.isFilled())
main()
Variables assigned to a comparator x == y
or others (greater than, less than, etc) will take a value of a boolean ( True
or False
):
x = 1==1 # True
y = 'a'=='b' # False
z = 2 <= 5 # True
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.