编码新手并有疑问。 这段代码中有一部分我不理解,想知道是否有人可以澄清。 该代码可以正常工作,但我不理解这一段。 这部分代码在做什么?

filledTrue = (filled == 1)

我猜想如果fill等于1,它将把fillTrue传递给超类,但是我还没有看到这样使用的代码,所以不确定。 括号是否像If语句一样工作而没有Else组件?

非常感谢!

这是完整的代码:

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()

#1楼 票数:0

分配给比较器x == y或其他变量(大于,小于等)的变量将采用布尔值( TrueFalse ):

x = 1==1 # True
y = 'a'=='b' # False
z = 2 <= 5 # True

  ask by Corrie Stewart translate from so

未解决问题?本站智能推荐:

1回复

谁能帮助我优化代码?

我写了下面的代码来达到预期的效果。直到200次输入都可以正常工作。我认为优化此代码可以解决我的问题。 谁能帮我优化以下代码。 样本输入 样品输出 “ bcdef”在输入中出现两次,即在第一个和最后一个位置,其他单词每个出现一次。 出现的顺序是“ bcdef”,“ abcdefg”
4回复

谁能帮助我找出这段代码中的解析错误?

这段代码的输出非常相似,但并不完全相同。 代码是: 输出为: 而应该是这样的: 该代码应如何修改?
5回复

请帮助我理解Python代码

我正在尝试了解以下python代码,因为我是新手。 到目前为止,这是我所了解的,之后我的问题将继续: howMany存储在0和1000(包括两者)之间生成的随机数。 stats = {}声明一个空字典 i将根据howMany的值运行。 例如,如果howMany是2,那么i
1回复

谁能帮助我了解以下代码中的损坏之处?[关闭]

关闭。 这个问题需要细节或清晰。 它目前不接受答案。 想改善这个问题吗? 通过编辑此帖子添加详细信息并澄清
2回复

谁能帮助我在此python代码中找到Cube

屏幕上没有输出。 而且没有错误出现。 如图所示。
2回复

列出python中的理解,请帮助我理解为什么下面的代码不起作用

以下是我为kaggle上的作业编写的代码。 但是无法理解为什么它无法按预期工作。 这里是要求:“”“给出了一段时间内提供的饭菜清单,如果连续两天提供相同的饭菜,则返回True,否则返回False。 下面是编写的代码: 给定餐点的True的预期返回值= ['Spam','Spam'],
3回复

CodeWars的问题它返回5而不是23。有人可以帮助我理解我的代码吗?

问题: 如果我们列出所有10 以下的自然数是 3 或 5 的倍数,我们会得到 3、5、6 和 9。这些倍数之和是 23。 完成该解决方案,使其return小于传入数字的所有 3 或 5 的倍数之和。 注意:如果数字是 3 和 5 的倍数,则只计算一次。 代码:
1回复

运行时错误:谁能帮助我吗?Python代码

下面的一段代码有一些运行时错误似乎无法修复它。 任何人都可以帮忙吗? **错误是:回溯(最近一次调用):