Я полагаю, что это именно то, что вы описываете - если это не так, пожалуйста, измените ваш вопрос, чтобы объяснить, что означает "автоматически увеличивать размер pensize в каждой итерации":
from turtle import Screen, Turtle
numsides = int(input("How many sides would you like your shape to have (3 - 8)? "))
if numsides == 3:
shape_name = "triangle"
elif numsides == 4:
shape_name = "square"
elif numsides == 5:
shape_name = "pentagon"
elif numsides == 6:
shape_name = "hexagon"
elif numsides == 7:
shape_name = "heptagon"
elif numsides == 8:
shape_name = "octagon"
print("That'll be a", shape_name + ".")
howbig = int(input("What size lines would you like: "))
window = Screen()
turtle = Turtle()
for width, myMoves in enumerate(range(numsides), start=1):
turtle.width(width)
turtle.forward(howbig)
turtle.left(360 / numsides)
turtle.hideturtle()
window.mainloop()
![enter image description here](https://i.stack.imgur.com/fF07N.png)
консоль говорит, сколько сторон вы хотели бы, чтобы ваша фигура имела (3 -
8)? 8 («Это будет», «восьмиугольник».)
Для Python 2 нам нужно внести некоторые изменения:
from turtle import Turtle, mainloop
numsides = int(raw_input("How many sides would you like your shape to have (3 - 8)? "))
if numsides == 3:
shape_name = "triangle"
elif numsides == 4:
shape_name = "square"
elif numsides == 5:
shape_name = "pentagon"
elif numsides == 6:
shape_name = "hexagon"
elif numsides == 7:
shape_name = "heptagon"
elif numsides == 8:
shape_name = "octagon"
print("That'll be a " + shape_name + ".")
howbig = int(raw_input("What size lines would you like: "))
turtle = Turtle()
width = 1
for myMoves in range(numsides):
turtle.width(width)
turtle.forward(howbig)
turtle.left(360 / numsides)
width += 1
turtle.hideturtle()
mainloop()
Каскад if ... elif ... elif ...
утверждений должен быть словарём, но я собираюсь предположить, что вы еще не достигли тех, которые были в вашем обучении. Я изменил код так, чтобы вопросы и ответы были выполнены до того, как окно черепахи сможет скрыть консоль.