我的意思是使用python中的graphics.py在图形窗口上绘制线条。 我的代码在这里是非常重复的,我需要把它变成一个for循环,我不知道该怎么做。
win=GraphWin("Patch1", 100, 100)
win.setBackground("white")
l1=Line(Point(0,80),Point(20,100))
l1.setFill("red")
l1.draw(win)
l2=Line(Point(0,60),Point(40,100))
l2.setFill("red")
l2.draw(win)
l3=Line(Point(0,40),Point(60,100))
l3.setFill("red")
l3.draw(win)
l4=Line(Point(0,20),Point(80,100))
l4.setFill("red")
l4.draw(win)
l5=Line(Point(0,0),Point(100,100))
l5.setFill("red")
l5.draw(win)
答案 0 :(得分:0)
至少:
for p1, p2 in [(Point(0,80), Point(20,100)), (Point(0,60), Point(40,100), ...]:
l = Line(p1, p2)
l.setFill("red")
l.draw(win)
唯一不同的是用于生成线的确切点;其余部分可以抽象到循环体中,如图所示。
我将其作为练习,以明确如何明确生成Points
列表。
答案 1 :(得分:0)
这应该有效:
win = GraphWin("Patch1", 100, 100)
win.setBackground("white")
for i in range(20,101,20):
l = Line(Point(0,100-i),Point(i,100))
l.setFill("red")
l.draw(win)
您也可以在此处使用功能。我会留给你的。