用turtle函數畫空心圓
turtle.circle是從下方開始畫圓的,所以要畫同心圓的話,每一次都要將畫筆移動到下一個圓的底部位置。
畫筆的坐標默認在0,0,就以它為圓心。
因為turtle畫圓的時候是從圓的底部開始畫的,所以需要找到四個圓底部的坐標
四個空心圓的代碼
import turtle for i in range(4): turtle.penup() turtle.goto(0,-50*(i+1))#從里面最小的一個圓的底部,慢慢變大 turtle.pendown() turtle.circle(50*(i+1))
抬起畫筆:turtle.penup()
移動到相應坐標:turtle.goto(坐標)
放下畫筆:turtle.pendown()
畫圓:turtle.circle(半徑)
效果如圖示,可以加畫筆的粗細顏色。

import turtle
for i in range(4):
turtle.pencolor("black")
turtle.pensize(20)
turtle.penup()
turtle.goto(0,-50(i+1))
turtle.pendown()
turtle.circle(50(i+1))
效果如圖

將其封裝為函數
import turtle
def target (size,color):
for i in range(4):
turtle.pencolor(color)
turtle.pensize(size)
turtle.penup()
turtle.goto(0,-50(i+1))
turtle.pendown()
turtle.circle(50(i+1))
target(20,"pink")
效果如圖,像是甜甜圈,哈哈哈
========================
同心矩形
import turtle #turtle.pensize(10) for i in range(5): turtle.penup() turtle.goto(-50*(i+1),50*(i+1))#從里面最小的一個圓的底部,慢慢變大 turtle.pendown() turtle.title('矩形') #turtle.begin_fill() #turtle.fillcolor('#069') for x in range(1, 5): if x % 2 == 1: n = 100*(i+1) else: n = 100 *(i+1) turtle.forward(n) turtle.right(90) #turtle.end_fill() turtle.hideturtle() turtle.done()
五環
import turtle turtle.title('奧運五環') x = -200 y = 100 r = 100 turtle.screensize(800,600) turtle.speed(5) # 第一個圈,藍色 turtle.up() turtle.goto(x, y) turtle.down() turtle.pensize(5) turtle.pencolor('blue') turtle.circle(r) # 第二個圈,黑色 turtle.up() turtle.goto(x + 2.5 * r, y) turtle.down() turtle.pensize(5) turtle.pencolor('black') turtle.circle(r) # 第三個圈,紅色 turtle.up() turtle.goto(x + (2.5 * r) * 2, y) turtle.down() turtle.pensize(5) turtle.pencolor('red') turtle.circle(r) # 第四個圈,黃色 turtle.up() turtle.goto(x + (2.5 * r) * 0.5, y - r) turtle.down() turtle.pensize(5) turtle.pencolor('yellow') turtle.circle(r) # 第五個圈,綠色 turtle.up() turtle.goto(x + (2.5 * r)*1.5, y - r) turtle.down() turtle.pensize(5) turtle.pencolor('green') turtle.circle(r) turtle.hideturtle() turtle.done()
作者:哈嘍阿甘
鏈接:https://www.jianshu.com/p/9d46029ada6c
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。