【问题标题】:How can I make my code write a python triangle?如何让我的代码编写一个 python 三角形?
【发布时间】:2016-03-06 18:42:33
【问题描述】:

我一直在尝试制作一个三角形并使用 Turtle 将其绘制出来。我希望人们能够导入这些值,我的程序会说它是否是三角形。如果它是一个三角形,那么我的程序会将它写出来。如果不是,它将给出错误。当我测试我的代码时,它说 angle1 未定义。在第 56 行,我尝试将角度 1 和所有其他参数更改为数字并且它起作用了,但我希望用户输入数字,而不是在程序中输入它们。不要担心数学。我有我要添加的所有代码。我只需要帮助让第 56 行工作。

from turtle import *
canvas = Screen()
canvas.setup(400,200)

class Triangle(object):
    """Triangle"""
    sides = 3
    def __init__(self, angle1, angle2, angle3, length1, length2, length3):
        self.angle1 = angle1
        self.angle2 = angle2
        self.angle3 = angle3
        self.length1 = length1
        self.length2 = length2
        self.length3 = length3

    print "Enter the following inputs"
    angle1 = raw_input("Please enter Angle 1: ")
    print angle1
    angle2 = raw_input("Please enter Angle 2: ")
    print angle2
    angle3 = raw_input("Please enter Angle 3: ")
    print angle3
    length1 = raw_input("Please enter Length 1: ")
    print length1
    length2 = raw_input("Please enter Length 2: ")
    print length2
    length3 = raw_input("Please enter Length 3: ")
    print length3

    def description(self):
        print angle1
        print angle2
        print angle3
        print length1
        print length2
        print length3
        self.degrees()

    def check_Angles(self):
        "Lets Make sure the angles add up to 180"
        if self.angle1 + self.angle2 + self.angle3 == 180:
            print "That is a good Triangle"
            return True 
        else:
            print "That is not a good Triangle"
            return False

    def draw(self):
        if self.check_Angles():
            pen = Turtle()
            pen.forward(self.length1)
            pen.left(self.angle1)
            pen.forward(self.length2)
            pen.left(self.angle2)
            pen.forward(self.length3)

triangle2 = Triangle(angle1, angle2, angle3, length1, length2, length3)

triangle2.draw() 

canvas.exitonclick()

【问题讨论】:

    标签: python turtle-graphics


    【解决方案1】:

    您的代码的以下重新排列将使其运行,但不一定能工作。 IE。它没有画出正确的三角形——但这是你可以在现在运行的代码中发现的东西:

    from turtle import *
    
    canvas = Screen()
    canvas.setup(400, 200)
    
    class Triangle(object):
        """Triangle Class"""
    
        def __init__(self, angle1, angle2, angle3, length1, length2, length3):
            self.angle1 = angle1
            self.angle2 = angle2
            self.angle3 = angle3
            self.length1 = length1
            self.length2 = length2
            self.length3 = length3
    
        def description(self):
            print angle1
            print angle2
            print angle3
            print length1
            print length2
            print length3
    
        def check_Angles(self):
            """Lets Make sure the angles add up to 180"""
    
            if self.angle1 + self.angle2 + self.angle3 == 180:
                print "That is a good Triangle"
                return True 
            else:
                print "That is not a good Triangle"
                return False
    
        def draw(self):
            if self.check_Angles():
                pen = Turtle()
                pen.forward(self.length1)
                pen.left(self.angle1)
                pen.forward(self.length2)
                pen.left(self.angle2)
                pen.forward(self.length3)
    
    print "Enter the following values:"
    
    angle1 = int(raw_input("Please enter Angle 1: "))
    angle2 = int(raw_input("Please enter Angle 2: "))
    angle3 = int(raw_input("Please enter Angle 3: "))
    
    length1 = int(raw_input("Please enter Length 1: "))
    length2 = int(raw_input("Please enter Length 2: "))
    length3 = int(raw_input("Please enter Length 3: "))
    
    triangle = Triangle(angle1, angle2, angle3, length1, length2, length3)
    
    triangle.draw() 
    
    canvas.exitonclick()
    

    【讨论】:

    • 啊。非常感谢你。我需要的只是输入。现在我可以把数学计算放进去,让它组成一个三角形。谢谢。
    猜你喜欢
    • 2014-10-17
    • 2014-03-21
    • 1970-01-01
    • 1970-01-01
    • 2015-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多