用python画内嵌套正方形
博主新建的Python学习QQ群分享一些实用的学习工具和疑问解答以及源码分享欢迎加入:431615454。
要画嵌套正方形首先要画出正方形
- 如果位置没有要求可以这样
from turtle import *
pencolor('red')
pensize(5)
for i in range(4):#循环四次,四条边
fd(100)#正方形边长100像素
lt(90)#画笔向左转90度
- 如果要在画布中央画的话则要计算画笔的起始位置(应该是画笔向下移动边长的一半)如:
from turtle import *
pencolor('red')
pensize(5)
bian=100#设置正方形边长为100
pu()#抬笔
rt(90)#右转90度
fd(bian/2)#向下移动半个边长
lt(90)#左转90度,画笔方向转回向东
pd()#放下画笔开始绘画
fd(bian/2)#先向东移动半个边长(画半个底边)
for i in range(3):#循环三次画右、上、左三边
lt(90)#向左转90度
fd(bian)#正方形边长
lt(90)#向左转90度准备画底边剩下一半
fd(bian/2)#画另外半个底边
效果图:(正方形已在画布中央位置)
内嵌正方形应该是在以上情况中加上一个外循环,在第二种方法的基础上画内嵌套正方形
from turtle import *
pencolor('red')
pensize(5)
bian=100
jiange=10#设置间隔
pu()
for j in range(4):#j为嵌套层数
rt(90)
if j==0:
fd(bian/2)#第一次循环画笔向下走半个边长
else:
fd(jiange)#每次循环向下额外移动jiange长度的距离
lt(90)
pd()
fd(bian/2+jiange*j)#加间隔长度
for i in range(3):
lt(90)
fd(bian+2*j*jiange)#加二倍间隔
lt(90)
fd(bian/2+jiange*j)
pu()#增加这行代码,每画一个正方形就抬笔
对大家有帮助的话不要忘记点赞、收藏哦!