繁体   English   中英

我该如何解决这个循环功能?

[英]How can I solve this loop function?

L 36 [L 4 [F 100 R 90] R 10]

解释:该程序首先在闭括号内循环 36 次,在 4 次内循环绘制 F 100 和 R 90(基本正方形绘制),然后向右 10 度并再次绘制正方形。

我有项目,所以我想做这样的函数,但我的代码不起作用。我将 F 和 R 函数作为参数添加到 L 函数,但我不能将 L 函数作为参数添加到 L 函数。我该如何解决这个问题?

从龟进口龟,屏幕

s = 屏幕() t = 海龟()

定义 F(值):

t.forward(value)

定义 R(值):

t.right(value)

def L(value1, *args, **kw):

for i in range(value1):

    for func in args:

        func(kw[func.__name__])

对于范围内的 i (36):

L(4, F, R, F=100, R=90)
L(1, R, R=10)

我可以这样做并且可以工作,但我不能在一个功能中使用。

s.exitonclick()

尝试将所有函数定义为类中的方法

for i in range(36)... 也应该是一种方法。

如果 36 是常数,则保持原样。 如果它是一个 var,则为该类定义它。

您可以使用@property 装饰器走得更远,因此您可以将最后一个函数作为类属性访问。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM