python turtle画多啦a梦_python 海龟绘图画哆啦A梦

import turtle as t

#定位

def my_goto(x,y):

t.up()

t.goto(x,y)

t.down()

#眼睛

def eyes():

t.tracer(False)

a = 2.5

for i in range(120):

if 0

a -= 0.05

t.lt(3)

t.fd(a)

else:

a += 0.05

t.lt(3)

t.fd(a)

t.tracer(True)

#胡须

def beard(x,y,s,f):

my_goto(x, y)

t.seth(s)

t.fd(f)

#画手

def hand(s,color,c):

t.seth(s)

t.fillcolor(color)

t.begin_fill()

t.circle(c)

t.end_fill()

#画脚

def foot(x,y,s,color,f1,c1,c2,f2,c3,c4,f4):

my_goto(x, y)

t.seth(s)

t.fillcolor(color)

t.begin_fill()

t.fd(f1)

t.circle(c1, c2)

t.fd(f2)

t.circle(c3, c4)

t.fd(f4)

t.end_fill()

#头

t.pensize(3)

t.up()

t.circle(150,40)

t.down()

t.fillcolor("#007fff")

t.begin_fill()

t.circle(150,280)

t.end_fill()

#围巾

t.fillcolor("#ff7f00")

t.begin_fill()

t.seth(0)#绝对角度

t.fd(200)#前进200

t.circle(-5,90)

t.fd(10)

t.circle(-5,90)

t.fd(207)

t.circle(-5,90)

t.fd(10)

t.circle(-5,90)

t.end_fill()

#脸

t.fd(183)

t.fillcolor('#ffffff')

t.begin_fill()

t.lt(45)

t.circle(120, 100)

t.seth(90)

eyes()

t.seth(180)

t.up()

t.fd(60)

t.down()

t.seth(90)

eyes()

t.up()

t.seth(180)

t.fd(64)

t.down()

t.seth(215)

t.circle(120, 100)

t.end_fill()

#鼻子

my_goto(-10,158)

t.fillcolor("#ffcc00")

t.begin_fill()

t.circle(20)

t.end_fill()

#嘴巴

my_goto(5,148)

t.seth(270)

t.fd(100)

t.seth(0)

t.circle(120,50)

t.seth(230)

t.circle(-120,100)

# 画胡须

beard(-37,135,165,60)

beard(-37,125,180,60)

beard(-37,115,193,60)

beard(37,135,15,60)

beard(37,125,0,60)

beard(37,115,-13,60)

#画身体

my_goto(0, 0)

t.seth(0)

t.up()

t.circle(150, 50)

t.down()

t.seth(30)

t.fd(40)

t.seth(70)

t.circle(-30, 270)

t.fillcolor('#00a0de')

t.begin_fill()

t.seth(230)

t.fd(80)

t.seth(90)

t.circle(1000, 1)

t.seth(-89)

t.circle(-1000, 10)

t.seth(180)

t.fd(70)

t.seth(90)

t.circle(30, 180)

t.seth(180)

t.fd(70)

t.seth(100)

t.circle(-1000, 9)

t.seth(-86)

t.circle(1000, 2)

t.seth(230)

t.fd(40)

t.circle(-30, 230)

t.seth(45)

t.fd(81)

t.seth(0)

t.fd(203)

t.circle(5, 90)

t.fd(10)

t.circle(5, 90)

t.fd(7)

t.seth(40)

t.circle(150, 10)

t.seth(30)

t.fd(40)

t.end_fill()

# 左手

hand(70,'#ffffff',-30)

# 右手

my_goto(-133.97, -91.81)

hand(50,'#ffffff',30)

# 脚

foot(103.74,-182.59,0,'#ffffff',15,-15,180,90,-15,180,10)

foot(-96.26,-182.59,180,'#ffffff',15,15,180,90,15,180,10)

# 口袋

my_goto(-103.42, 15.09)

t.seth(0)

t.fd(38)

t.seth(230)

t.begin_fill()

t.circle(90, 260)

t.end_fill()

my_goto(5, -40)

t.seth(0)

t.fd(70)

t.seth(-90)

t.circle(-70, 180)

t.seth(0)

t.fd(70)

#铃铛

my_goto(-103.42, 15.09)

t.fd(90)

t.seth(70)

t.fillcolor('#ffd200')

t.begin_fill()

t.circle(-20)

t.end_fill()

t.seth(170)

t.fillcolor('#ffd200')

t.begin_fill()

t.circle(-2, 180)

t.seth(10)

t.circle(-100, 22)

t.circle(-2, 180)

t.seth(180-10)

t.circle(100, 22)

t.end_fill()

t.goto(-13.42, 15.09)

t.seth(250)

t.circle(20, 110)

t.seth(90)

t.fd(15)

t.dot(10)#dot绘制一个指定直径和颜色的圆点.

my_goto(0, -150)

# 眼睛

t.seth(0)

my_goto(-20, 195)

t.fillcolor('#000000')

t.begin_fill()

t.circle(13)

t.end_fill()

t.pensize(6)

my_goto(20, 205)

t.seth(75)

t.circle(-10, 150)

t.pensize(3)

my_goto(-17, 200)

t.seth(0)

t.fillcolor('#ffffff')

t.begin_fill()

t.circle(5)

t.end_fill()

my_goto(0, 0)

t.exitonclick()#不关闭窗体

71f6d938fc229e6c3c6f0a114c2df0de.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 好的,下面是用Python Turtle画多啦A的代码: ```python import turtle # 设置笔 t = turtle.Turtle() t.speed(10) t.pensize(3) # 身体 t.fillcolor("#00A1E4") t.begin_fill() t.circle(100) t.end_fill() # 脸 t.penup() t.goto(0, 150) t.pendown() t.fillcolor("#FFFFFF") t.begin_fill() t.circle(50) t.end_fill() # 眼睛 t.penup() t.goto(-30, 180) t.pendown() t.fillcolor("#000000") t.begin_fill() t.circle(10) t.end_fill() t.penup() t.goto(30, 180) t.pendown() t.begin_fill() t.circle(10) t.end_fill() # 鼻子 t.penup() t.goto(0, 150) t.pendown() t.fillcolor("#FF0000") t.begin_fill() t.circle(20) t.end_fill() # 嘴巴 t.penup() t.goto(-40, 120) t.pendown() t.right(45) t.circle(50, 90) # 手 t.penup() t.goto(-100, 0) t.pendown() t.fillcolor("#00A1E4") t.begin_fill() t.right(45) t.forward(50) t.right(90) t.forward(100) t.right(90) t.forward(50) t.right(90) t.forward(100) t.end_fill() # 脚 t.penup() t.goto(0, -100) t.pendown() t.fillcolor("#00A1E4") t.begin_fill() t.right(90) t.forward(50) t.right(90) t.forward(100) t.right(90) t.forward(50) t.right(90) t.forward(100) t.end_fill() # 完成 turtle.done() ``` 运行代码后,就可以看到出来的多啦A啦! ### 回答2: 使用Python中的turtle库可以轻松的绘制多啦A。 首先,在Python中导入turtle库: ```python import turtle ``` 接着,我们可以创建一个笔并指定它的属性,如颜色、线宽、速度等。下面的代码创建了一个蓝色的笔,设置线宽为2,速度为10: ```python doraemon = turtle.Turtle() doraemon.color("blue") doraemon.pensize(2) doraemon.speed(10) ``` 然后,我们就可以开始绘制多啦A的头部了。下面的代码用turtle库绘制了一个圆形的头部: ```python doraemon.begin_fill() doraemon.circle(100) doraemon.end_fill() ``` 接着,我们用了turtle库的pensize()和goto()方法出了多啦A的两只眼睛和鼻子: ```python doraemon.pensize(5) doraemon.color("white") doraemon.goto(-40, 80) doraemon.begin_fill() doraemon.circle(20) doraemon.end_fill() doraemon.goto(40, 80) doraemon.begin_fill() doraemon.circle(20) doraemon.end_fill() doraemon.color("black") doraemon.goto(0, 80) doraemon.begin_fill() doraemon.circle(10) doraemon.end_fill() ``` 接下来,我们用turtle库的penup()方法将笔移动到多啦A的左耳朵处,然后再使用pendown()方法开始绘制其他部分: ```python doraemon.penup() doraemon.goto(-70, 150) doraemon.pendown() doraemon.color("blue") doraemon.begin_fill() doraemon.setheading(-60) for i in range(2): doraemon.forward(50) doraemon.right(120) doraemon.forward(50) doraemon.right(60) doraemon.end_fill() ``` 最后,我们再使用turtle库的penup()方法将笔移动到多啦A的身体处,然后使用goto()和pendown()方法出身体和手脚: ```python doraemon.penup() doraemon.goto(-120, -150) doraemon.pendown() doraemon.color("white") doraemon.begin_fill() doraemon.setheading(0) for i in range(2): doraemon.forward(180) doraemon.right(90) doraemon.forward(100) doraemon.right(90) doraemon.end_fill() doraemon.color("blue") doraemon.penup() doraemon.goto(-100, -150) doraemon.pendown() doraemon.begin_fill() for i in range(2): doraemon.forward(40) doraemon.right(90) doraemon.forward(80) doraemon.right(90) doraemon.end_fill() doraemon.penup() doraemon.goto(60, -150) doraemon.pendown() doraemon.color("blue") doraemon.begin_fill() for i in range(2): doraemon.forward(40) doraemon.right(90) doraemon.forward(80) doraemon.right(90) doraemon.end_fill() doraemon.goto(-80, -250) doraemon.begin_fill() doraemon.setheading(45) doraemon.circle(30, 180) doraemon.goto(-80, -250) doraemon.end_fill() doraemon.goto(80, -250) doraemon.begin_fill() doraemon.setheading(135) doraemon.circle(30, 180) doraemon.goto(80, -250) doraemon.end_fill() ``` 经过上述操作,我们就成功的出了一个可爱的多啦A。完整代码如下: ```python import turtle doraemon = turtle.Turtle() doraemon.color("blue") doraemon.pensize(2) doraemon.speed(10) doraemon.begin_fill() doraemon.circle(100) doraemon.end_fill() doraemon.pensize(5) doraemon.color("white") doraemon.goto(-40, 80) doraemon.begin_fill() doraemon.circle(20) doraemon.end_fill() doraemon.goto(40, 80) doraemon.begin_fill() doraemon.circle(20) doraemon.end_fill() doraemon.color("black") doraemon.goto(0, 80) doraemon.begin_fill() doraemon.circle(10) doraemon.end_fill() doraemon.penup() doraemon.goto(-70, 150) doraemon.pendown() doraemon.color("blue") doraemon.begin_fill() doraemon.setheading(-60) for i in range(2): doraemon.forward(50) doraemon.right(120) doraemon.forward(50) doraemon.right(60) doraemon.end_fill() doraemon.penup() doraemon.goto(-120, -150) doraemon.pendown() doraemon.color("white") doraemon.begin_fill() doraemon.setheading(0) for i in range(2): doraemon.forward(180) doraemon.right(90) doraemon.forward(100) doraemon.right(90) doraemon.end_fill() doraemon.color("blue") doraemon.penup() doraemon.goto(-100, -150) doraemon.pendown() doraemon.begin_fill() for i in range(2): doraemon.forward(40) doraemon.right(90) doraemon.forward(80) doraemon.right(90) doraemon.end_fill() doraemon.penup() doraemon.goto(60, -150) doraemon.pendown() doraemon.color("blue") doraemon.begin_fill() for i in range(2): doraemon.forward(40) doraemon.right(90) doraemon.forward(80) doraemon.right(90) doraemon.end_fill() doraemon.goto(-80, -250) doraemon.begin_fill() doraemon.setheading(45) doraemon.circle(30, 180) doraemon.goto(-80, -250) doraemon.end_fill() doraemon.goto(80, -250) doraemon.begin_fill() doraemon.setheading(135) doraemon.circle(30, 180) doraemon.goto(80, -250) doraemon.end_fill() ``` 最终,运行此代码会得到一个可爱的多啦A,如下图所示: ![doraemon](https://cdn.jsdelivr.net/gh/AIDashing/Pictures/img/20210704114020.png) ### 回答3: Python turtle是一个简单的图形库,可以用于创造各种不同的图形。它提供了绘制各种形状和复杂图案的工具,而多啦a则是一个极具特色和魅力的卡通角色,是小时候很多人的想。 要用Python turtle画多啦a,首先需要了解多啦a的形状和特征。多啦a的身体是椭圆形的,头部大,身体会逐渐变小,脚和手掌很大,脚后跟也很厚。画多啦a最好采用分层绘制的方法,先头和身体,再四肢。可以用turtle.circle()、turtle.pendown()、 turtle.penup()、turtle.forward()、turtle.right()、turtle.left()等指令来绘制多啦a的各个部分。 下面将介绍一些用Python turtle绘制多啦a的基本步骤: 1. 定义笔对象和布大小 首先需要导入turtle库,并定义布的大小和笔对象turtle_pen。 ```py import turtle t = turtle.Turtle() #初始化turtle t.screen.setup(width=500,height=500) ``` 2. 画多啦a身体 使用turtle.circle()函数绘制多啦a的身体,由于它是椭圆形的,可以用两个半径分别代表椭圆的长、短轴。 ```py t.penup() # 笔移动到起始位置 t.goto(0, -100) # 因为身体的中心在布的正中央,所以先移动到网格点(0,-100) t.pendown() #开始 t.color('blue') #设定颜色 t.begin_fill() #开始涂色 t.circle(100,350) #绘制一段弧线,其中100为半径,350表示角度 t.circle(60,80) t.circle(170,130) t_circle(-30,210) t.end_fill() #填充色彩,结束涂色 ``` 3. 画多啦a头部 头部本身也是椭圆形状,因此也可以使用turtle.circle()函数绘制。 ```py t.penup() #设定起始位置 t.goto(0, 40) t.pendown() #开始绘制头部 t.color('blue') t.begin_fill() t.circle(45) #绘制头部 t.end_fill() ``` 4. 画多啦a的脚和臂 脚和臂都很粗和大,可以用turtle.circle()函数来绘制。 ```py #左臂的绘制 t.penup() #设定起始位置 t.goto(-50, -50) t.pendown() #开始绘制左臂 t.color('blue') t.begin_fill() t.circle(40,180) #绘制左臂 t.circle(-15,220) t.circle(-15,53) t.end_fill() #右臂的绘制 t.penup() #设定起始位置 t.goto(50, -50) t.pendown() #开始绘制右臂 t.color('blue') t.begin_fill() t.circle(-40,180) #绘制右臂 t.circle(15,-220) t.circle(15,-73) t.end_fill() #右脚的绘制 t.penup() #设定起始位置 t.goto(20, -160) t.pendown() #开始绘制右脚 t.color('blue') t.begin_fill() t.circle(30) #绘制右脚 t.end_fill() #左脚的绘制 t.penup() #设定起始位置 t.goto(-20, -160) t.pendown() #开始绘制左脚 t.color('blue') t.begin_fill() t.circle(30) #绘制左脚 t.end_fill() ``` 5. 画多啦a的眼睛和鼻子 多啦a的眼睛是两个大大的圆圈,可以使用turtle.circle()函数出。笔大小的设定用turtle.pensize()函数,颜色设定用turtle.color()函数实现。 ```py #左眼的绘制 t.penup() #设定起始位置 t.goto(-25,75) t.pendown() #开始绘制左眼 t.color('white') t.begin_fill() t.circle(18) #左眼最开始是白色的,所以color为白色 t.end_fill() t.penup() t.goto(-22,82) t.pendown() #开始绘制大圆球眼珠 t.color('black') t.begin_fill() t.circle(5) #眼珠是黑色的,半径为5 t.end_fill() t.penup() #设定起始位置 t.goto(-28,80) t.pendown() #开始绘制长眼睛 t.color('black') t.pensize(2) t.right(80) t.forward(10) t.backward(15) #右眼的绘制与左眼类似 t.penup() #设定起始位置 t.goto(25,75) t.pendown() #开始绘制右眼 t.color('white') t.begin_fill() t.circle(18) #右眼最开始是白色的,所以color为白色 t.end_fill() t.penup() t.goto(22,82) t.pendown() #开始绘制大圆球眼珠 t.color('black') t.begin_fill() t.circle(5) #眼珠是黑色的,半径为5 t.end_fill() t.penup() #设定起始位置 t.goto(28,80) t.pendown() #开始绘制长眼睛 t.color('black') t.pensize(2) t.left(260) t.forward(10) t.backward(15) #鼻子的绘制 t.penup() #设定起始位置 t.goto(0,40) t.pendown() #开始绘制鼻子 t.color('blue') t.begin_fill() t.circle(12) #鼻子是蓝色的,半径为12 t.end_fill() ``` 如果以上的python代码都按照顺序输入,很快你就能看到多啦a被绘制在布中央了。而你也可以对第4、5步进行微调,让自己出更符合自己期望的多啦a。 总之,使用Python turtle绘制多啦a需要对其特征细节有一定的了解,才能出逼真的效果。希望这篇文章对您有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值