python绘画正方形
时间: 2023-11-14 09:11:23 浏览: 69
Python可以使用turtle库来绘制正方形。下面是一个简单的例子:
```
from turtle import *
pencolor('red') # 设置画笔颜色为红色
pensize(5) # 设置画笔粗细为5像素
for i in range(4): # 循环四次,画四条边
fd(100) # 正方形边长100像素
lt(90) # 画笔向左转90度
```
如果要在画布中央画正方形,则需要计算画笔的起始位置。下面是一个在画布中央画正方形的例子:
```
from turtle import *
pencolor('red') # 设置画笔颜色为红色
pensize(5) # 设置画笔粗细为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) # 设置画笔粗细为5像素
bian = 100 # 设置正方形边长为100
jiange = 10 # 设置间隔为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() # 每画一个正方形就抬笔
```