网络编程
位置:首页>> 网络编程>> Python编程>> 通过python-turtle库实现绘制图画

通过python-turtle库实现绘制图画

作者:阿黎逸阳  发布时间:2023-11-23 17:39:35 

标签:python,turtle库,绘图

1 图1

第一个图是蚊香,感兴趣的小伙伴可以自己尝试在python中用turtle库绘制一下。

通过python-turtle库实现绘制图画

具体代码如下:


#画蚊香
import turtle

turtle.pensize(30)
for i in range(30):
 turtle.circle(i*10,60)
turtle.done()

2 图2

第二个图是蚊香的变体图,怎么通过调整蚊香代码,更改颜色和形状,绘制出如下图形?

通过python-turtle库实现绘制图画

具体代码如下:


import turtle

t = turtle.Turtle()
t.pensize(2)
t.color('violet')
for i in range(90):
   t.circle(i*1,60)

3 图3

第三个图是蛛网图,不过不同部分有不同的颜色,你也可以试着改成别的颜色。

通过python-turtle库实现绘制图画

具体代码如下:


#画蜘蛛网
from turtle import *

speed(0)
t = 1
for i in range(100):
   if t == 1:
       color('darkviolet')
       fd(2*i)
       rt(61)
       t += 1
   elif t == 2:
       color('green')
       fd(2*i)
       rt(61)
       t += 1
   else:
       color('yellow')
       fd(2*i)
       rt(61)
       t = 1

4 图4

第四个图是奥运五环。

通过python-turtle库实现绘制图画

具体代码如下:


#画奥运五环
import turtle

turtle.width(5)#控制画笔宽度
colors = ['blue', 'black', 'red', 'yellow', 'green']

for i in range(5):
   turtle.color(colors[i])#控制画笔颜色
   turtle.circle(50)#控制圆的大小,半径
   turtle.penup()#让画笔抬起
   if i<=1:
       turtle.goto((i+1)*120,0)
       turtle.pendown()
   elif i==2:
       turtle.goto(60,-30)
       turtle.pendown()
   elif i==3:
       turtle.goto(180,-30)
       turtle.pendown()
   else:
       turtle.color('green')
       turtle.circle(50)
turtle.hideturtle()

5 图5

第五个图是五星红旗。

通过python-turtle库实现绘制图画

具体代码如下:


#画五星红旗
import turtle as t

t.setup(600,400,0,0)
t.bgcolor("red")
t.fillcolor("yellow")
t.color('yellow')
t.speed(5)
t.begin_fill()
t.up()
t.goto(-280,100)
t.down()
for i in range (5):
   t.forward(150)
   t.right(144)
t.end_fill()
t.begin_fill()
t.up()
t.goto(-100,180)
t.setheading(305)
t.down()
for i in range (5):
   t.forward(50)
   t.left(144)
t.end_fill()
t.begin_fill()
t.up()
t.goto(-50,110)
t.setheading(30)
t.down()
for i in range (5):
   t.forward(50)
   t.right(144)
t.end_fill()
t.begin_fill()
t.up()
t.goto(-40,50)
t.setheading(5)
t.down()
for i in range (5):
   t.forward(50)
   t.right(144)
t.end_fill()
t.begin_fill()
t.up()
t.goto(-100,10)
t.setheading(300)
t.down()
for i in range (5):
   t.forward(50)
   t.left(144)
t.end_fill()
t.hideturtle()
t.done()

本文中有些图在网上也有一些代码,大家都可以参考一下,想一想还有没有别的有趣的画法。 

来源:https://blog.csdn.net/qq_32532663/article/details/121439513

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com