【问题标题】:How to draw N -times heptagon shapes not on top of each others, using Python Turtle? [closed]如何使用 Python Turtle 绘制不重叠的 N 次七边形? [关闭]
【发布时间】:2021-09-12 20:43:21
【问题描述】:

下面的代码在同一位置绘制形状并相互重叠。有没有办法分别绘制形状??

   
import turtle

tegan = turtle.Turtle()

turtle.fillcolor('grey')

turtle.begin_fill()


numbers = int(input('number of 50 Pence: '))
print(numbers)

length = 100  
degrees = 51.42857
angle = 40

def draw_heptagon(tegan, length, numbers, angle):

    for i in range(numbers):
        for x in range(7):
            turtle.forward(length)
            turtle.left(degrees)
        turtle.right(angle)

draw_heptagon(tegan, length, numbers, angle)

turtle.end_fill()
turtle.done()

【问题讨论】:

  • 在 Python 中编写一个算法,要求用户输入一个整数,然后使用 Tegan the Turtle 绘制该数量的 50 便士片形状(七边形)。可以把七边画成直线,硬币上的细节就不用填写了。
  • 这不能回答我的问题。请edit您的问题并发布到目前为止您为解决问题所做的尝试。当前代码只是将n 七边形相互叠加。您尝试将它们散布到什么地方?
  • 我尝试添加协调(x,y),但不幸的是,它给出了相同的结果
  • 好的,所以edit您的问题并发布您尝试过的代码。 Stack Overflow 不是教程、代码编写或家庭作业服务。 “告诉我如何解决这个编码问题is off-topic。您必须make an honest attempt at the solution,然后询问有关您的实施的具体问题。

标签: python turtle-graphics python-turtle


【解决方案1】:

尝试将笔移到其他地方:

import turtle

tegan = turtle.Turtle()
turtle.fillcolor('grey')
turtle.begin_fill()

numbers = int(input('number of 50 Pence: '))

length = 50  
degrees = 51.42857
angle = 40

def draw_heptagon(tegan, size, numbers, angle):

    for i in range(numbers):
        for x in range(7):
            turtle.forward(length)
            turtle.left(degrees)
        turtle.right(angle)
        turtle.penup()
        turtle.forward(length * 2)
        turtle.pendown()

draw_heptagon(tegan, length, numbers, angle)
turtle.end_fill()
turtle.done()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-03-24
    • 2015-09-30
    • 2020-09-01
    • 2021-04-12
    • 1970-01-01
    • 2014-10-03
    • 1970-01-01
    • 2017-03-05
    相关资源
    最近更新 更多