0

这是我的代码自动取款机。

def rectangle(a, b, c, d, pen_color, fill_color, pensize):
    p = pen_color.strip()
    pen_color(p)
    s = fill_color.strip()
    fill_color(s)
    a = int(pensize)
    pensize(a)
    up()
    setpos (a,b)
    down()
    fd (c-a)
    left(90)
    fd(d-b)
    left (90)
    fd (c-a)
    left (90)
    fd (d-b)
    left(90)
rectangle(10,10,200,100, pen_color="red", fill_color="blue", pensize=3)

如何让最后一行中的这些颜色在定义中起作用?我想要 pen_color red 和 fill_color blue 但它应该从最后一个矩形行中读取。有任何想法吗?谢谢你。

4

1 回答 1

0

您的程序中存在错误。pen_colorfill_color不是函数而是变量,你不能调用它们并且会得到一个TypeError. 它可能是您想要使用的 pencolor() 和 fillcolor()。不完整的例子:

import turtle

def rect(a,b,pen_color,fill_color,pen_size):
    rec = turtle.Turtle()
    rec.pen(fillcolor=fill_color, pencolor=pen_color, pensize=pen_size)
    rec.begin_fill()
    for i in range(2):
          rec.forward(a)
          rec.left(90)
          rec.forward(b)
          rec.left(90)
    rec.end_fill()
rect(100,100, pen_color="red", fill_color="blue", pen_size=3)

...所以你没有得到一个 F

于 2012-10-12T07:18:36.623 回答