【发布时间】:2012-10-03 04:38:57
【问题描述】:
我正在尝试使用 Python 中的 Turtle 模块使用单独的函数绘制美国国旗,首先我有计算所有尺寸的 draw_flag,然后是实际绘制国旗形状的 draw_rectangle,然后我制作 draw_stars 等,画星星和线条。
但是,我在理解函数的工作原理时遇到了一些麻烦。到目前为止,这是我的代码:
import turtle
import time
import random
def draw_rectangle(length, height):
turtle.up()
x = length
y = height
turtle.begin_fill()
turtle.setpos(x,y)
turtle.down()
turtle.forward(418)
turtle.right(90)
turtle.forward(220)
turtle.right(90)
turtle.forward(418)
turtle.right(90)
turtle.forward(220)
turtle.end_fill()
turtle.sleep(2)
turtle.bye
def draw_flag(A):
height = int(A)
## length = height*1.9
## union_height = height*(7/13)
## union_length = length*(2/5)
## E = F = union_height/10
## G = H = union_length/12
## stripe_width = height/13
## diameter_star = stripe_width*(4/5)
length = height*1.9
return
A = input("Please enter the height of the flag: ")
draw_rectangle(length, height)
我希望它会通过绘制一个矩形返回,但它一直说长度未定义,不确定将“长度”放置在哪里可以识别变量。
我正在使用 Python 3,谢谢。
【问题讨论】:
-
用户输入被存储到 A 中,在全局范围内,您没有定义长度或高度。你需要做一些像 length, height = draw_flag(A) 和里面 draw_length(A) 你需要返回 length, height
标签: python function turtle-graphics