怎么用python绘制正七角星
的有关信息介绍如下:
在《怎么用python画正六边形?(turtle)》里面,我介绍了用python画正六边形的一个方法。
那么,本文,在此基础上,进一步来画正七角星,并依次画出其它角星。
9怎么用python画正六边形?(turtle)
首先,画一个正七角星。
import turtle
import time
t = turtle.Pen()
for i in range(7):
t.forward(100)
t.right(180-180/7)
看看能不能画出正六角形:
import turtle
import time
t = turtle.Pen()
for i in range(6):
t.forward(100)
t.right(180-180/6)
上面的正六角形只画出了一半。
需要把range(6)变成range(12)。
先画正七角星,再画正六角星,且正六角星在正七角星上面:
for i in range(7):
t.forward(100)
t.right(180-180/7)
t.goto(0,100)
for i in range(12):
t.forward(100)
t.right(180-180/6)
可是,正六角星和正七角星之间,连了一条线段。
如果不想要这条线段,就需要把笔尖提起来。
t.up()%提笔
t.goto(0,100)%移动笔尖
t.down()%落笔
for i in range(12):
t.forward(100)
t.right(180-180/6)
用for循环,结合if语句,批量绘图:
for n in [5,6,7,8]:
if n%2==0:
nn = n*2
else:
nn = n
for i in range(nn):
t.forward(100)
t.right(180-180/n)
t.up()
t.goto(0,100*(n-4))
t.down()
注意看turtle最后的位置。
最后,让turtle返回原点:
t.up()
t.goto(0,0)



