我的乌龟死了

2024-10-03 13:22:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我的乌龟死了!!!他不会用我的套圈画画。nmbrOfSides正在重新调整3顺便说一句。有什么我可能忽略的提示吗?你知道吗

import turtle
counter = 0

def poly_side_calculation (student_number):
    sides = 3 + student_number % 3
    return sides ####function returns 3 when I enter student number



print("welcome to my TURTLE demonstration.\n")

studentNmbr = int(input("Please enter your student number to get started: " ))
print("Here are your choices for the color of your polygon. You can choose red, green,    blue, yellow, cyan, magenta, black or white.")
fill_color = input("Please enter the color that you would like your polygon to be: ")
poly_side_length = int(input("Please enter the length of your polygon side: "))

nmbrOfSides = poly_side_calculation(studentNmbr)
vertex_angle = 360 / nmbrOfSides

turtle.color("black", fill_color)
turtle.pensize(5)

turtle.showturtle()
turtle.pendown()
turtle.begin_fill()
turtle.setpos(-150,150)
while counter <= nmbrOfSides:
    turtle.forward = (poly_side_length)
    turtle.left = vertex_angle
    counter = counter + 1
turtle.end_fill()

Tags: thetonumberinputyourcounterfillstudent
2条回答
turtle.forward = (poly_side_length)
turtle.left = vertex_angle

那不是你想的那样。您需要调用函数,而不是分配给它们:

turtle.forward(poly_side_length)
turtle.left(vertex_angle)

粗略地说,你告诉海龟“前进50像素”而不是“前进50像素”,海龟重新定义了“前进”的概念而不是移动。你知道吗

Python从左到右计算公式,但有些操作具有优先级(类似PEMDAS)。你知道吗

在求和之前正在计算模运算。试着用括号计算:

sides = (3 + student_number) % 3

哪个for student_number=0应该返回1

相关问题 更多 >