送你一只用python实现的哆啦A梦!

本文介绍了如何使用Python和Turtle模块创作哆啦A梦的图形,展示了Python编程语言在图形化编程和教育领域的应用,以及哆啦A梦所蕴含的寓意和编程教学价值。

一起畅游哆啦A梦的世界吧!

“哆啦a梦象征着童心、快乐、无忧无虑、

美丽、理想、纯洁的友谊”

哆啦A梦

最近不少小伙伴和小编反应想要哆啦A梦的代码,这不,小编立马熬夜用python给大家敲出了一只叮当猫,喜欢哆啦A梦的小伙伴可以给小编点个赞嘛~

Python简介

Python是一种高级编程语言,由Guido van Rossum于1989年开发,旨在提供易于阅读、易于编写和易于理解的编程语言。Python支持面向对象、函数式和过程式编程范式。它是一种解释型语言,也就是说,不需要编译即可运行。

Python具有简单、清晰、易读、易写的语法,代码风格简洁,简单易学,是一门非常适合初学者的编程语言,也是人工智能、大数据分析和科学计算等领域的首选编程语言之一。

Python可以在多种平台上运行,包括Windows、Linux、MacOS和移动设备。此外,Python有大量的第三方库和工具,使其功能更加强大和易于使用。

由于Python广泛应用于科学计算、数据分析、人工智能、网络编程、Web开发、游戏开发等领域,因此在当今的软件开发领域占据了重要地位。与其他编程语言相比,Python具有以下优点:

1

-----------------------——

代码易读易写。Python的代码风格非常简洁,易于写和阅读。因此,在编写代码时,能够快速的定位代码的问题。

2

-----------------------——

内置数据类型。Python包含了常用的内置数据类型,如列表、字典、元组和集合等,使得开发人员能够更加高效地处理数据。

3

-----------------------——

支持面向对象编程。Python是一种面向对象的编程语言,可以方便地定义对象和类,并实现面向对象编程的特性,如继承、多态等。

4

-----------------------——

应用广泛。Python在人工智能、数据分析、Web开发、游戏开发、科学计算等领域有广泛的应用,是一个多功能的编程语言。

总的来说,Python是一种简洁、易读、易写、易学的编程语言。它具有广泛的应用领域,并且它的开源社区庞大,包含大量的第三方库和工具,使得Python成为一门非常受欢迎的编程语言。

Turtle简介

小海龟(Turtle)是一个由Python语言编写的图形化程序库,被称为Python的标准绘图库之一。其具有简单易学、功能强大、可扩展性高等特点,广泛应用于教育、艺术、科技等领域。

小海龟的诞生可以追溯到1967年,时任美国麻省理工学院计算机科学系主任的Seymour Papert教授,在参与研究儿童学习过程的同时,开发了一个名为“LOGO”的程序语言和图形绘制工具,旨在帮助儿童更好地理解和掌握数学、计算机科学等知识。小海龟正是从LOGO工具中演化而来。它的名字来源于LOGO中一个可以在屏幕上绘制图形的变量名,而这个变量名则是来自于Seymour Papert教授的好朋友Turtle(海龟)。

小海龟的绘图原理是基于“指令式绘图”方法,即通过编写一系列指令,控制海龟在画布上移动,并在其留下的路径上绘制线条、图形等。在Python中,使用turtle模块即可调用小海龟功能。通过turtle模块提供的一些方法,如“forward()”、“right()”、“circle()”等,我们能够对小海龟进行控制,从而实现绘制不同的图形和图案。

小海龟不仅仅是一种绘图工具,更是一种学习编程的好方式。通过自己编写小海龟程序,我们不仅能够体验到编程的乐趣,同时也能够提高自己的逻辑思维能力和创造力。在教育领域,小海龟经常被用来作为儿童编程入门的工具,帮助儿童快速上手,理解编程思路。

小海龟还有许多功能强大的扩展工具,如turtle-graphics、turtle-remote、TurtleArt等,这些工具不仅能够改进小海龟的功能,还能够让小海龟与其他设备(如树莓派、Arduino等)联动,实现更加复杂的项目。

总的来说,小海龟是一种简单易学、功能强大、可扩展性高的图形化程序库。学习使用小海龟不仅可以体验编程的乐趣,更能够锻炼自己的编程能力和创造力。

哆啦A梦

Travel together

哆啦A梦

哆啦A梦的寓意是多方面的,既有对人类生活的关怀,也有对未来社会的思考。

  • 珍惜时间:哆啦A梦的出现是为了提醒大雄珍惜时间,他会使用时间机器带大雄沉浸在历史和未来中的各种场景中,强调了时间的珍贵和独特价值。

  • 倡导团队合作:哆啦A梦也倡导团队合作,大雄和其他角色的互动和合作,强调了团队协作和互助的重要性。

  • 童心、快乐、无忧无虑、美丽、理想、纯洁的友谊:哆啦A梦的寓意也是童心、快乐、无忧无虑、美丽、理想、纯洁的友谊,这些元素体现了对人类美好生活的向往和对未来的乐观态度。

  • 和平、美好和美梦:在哆啦A梦的故事中,常常表达对和平、美好和美梦的追求,这是对人类社会的期望和理想。

完整程序


from turtle import *
def gotos(x, y):
    penup()
    goto(x, y)
    pendown()
# 眼睛
def eyes():
    tracer(False)
    a = 2.5
    for i in range(120):
        if 0 <= i < 30 or 60 <= i < 90:
            a -= 0.05
            lt(3)
            fd(a)
        else:
            a += 0.05
            lt(3)
            fd(a)
    tracer(True)
# 胡须
def beard():
    gotos(-37, 135)
    seth(165)
    fd(60)
    gotos(-37, 125)
    seth(180)
    fd(60)
    gotos(-37, 115)
    seth(193)
    fd(60)
    gotos(37, 135)
    seth(15)
    fd(60)
    gotos(37, 125)
    seth(0)
    fd(60)
    gotos(37, 115)
    seth(-13)
    fd(60)
# 嘴巴
def mouth():
    gotos(5, 148)
    seth(270)
    fd(100)
    seth(0)
    circle(120, 50)
    seth(230)
    circle(-120, 100)
# 围巾
def scarf():
    fillcolor('#e70010')
    begin_fill()
    seth(0)
    fd(200)
    circle(-5, 90)
    fd(10)
    circle(-5, 90)
    fd(207)
    circle(-5, 90)
    fd(10)
    circle(-5, 90)
    end_fill()
# 鼻子
def nose():
    gotos(4, 148)
    fillcolor('#e70010')
    begin_fill()
    circle(20)
    end_fill()
# 黑眼睛
def black_eyes():
    seth(0)
    gotos(-20, 195)
    fillcolor('#000000')
    begin_fill()
    circle(13)
    end_fill()
    pensize(6)
    gotos(20, 205)
    seth(75)
    circle(-10, 150)
    pensize(3)
    gotos(-17, 200)
    seth(0)
    fillcolor('#ffffff')
    begin_fill()
    circle(5)
    end_fill()
    gotos(0, 0)
# 脸
def face():
    fd(183)
    fillcolor('#ffffff')
    begin_fill()
    lt(45)
    circle(120, 100)
    seth(90)
    eyes()
    seth(180)
    penup()
    fd(60)
    pendown()
    seth(90)
    eyes()
    penup()
    seth(180)
    fd(64)
    pendown()
    seth(215)
    circle(120, 100)
    end_fill()
# 头型
def head():
    penup()
    circle(150, 40)
    pendown()
    fillcolor('#00a0de')
    begin_fill()
    circle(150, 280)
    end_fill()
# 画哆啦A梦
def Doraemon():
    # 头部
    head()
    # 围脖
    scarf()
    # 脸
    face()
    # 眼睛
    black_eyes()
    # 红鼻子
    nose()
    # 嘴巴
    mouth()
    # 胡须
    beard()
    # 身体
    gotos(0, 0)
    seth(0)
    penup()
    circle(150, 50)
    pendown()
    seth(30)
    fd(40)
    seth(70)
    circle(-30, 270)
    fillcolor('#00a0de')
    begin_fill()
    seth(230)
    fd(80)
    seth(90)
    circle(1000, 1)
    seth(-89)
    circle(-1000, 10)
    # print(pos())
    seth(180)
    fd(70)
    seth(90)
    circle(30, 180)
    seth(180)
    fd(70)
    # print(pos())
    seth(100)
    circle(-1000, 9)
    seth(-86)
    circle(1000, 2)
    seth(230)
    fd(40)
    # print(pos())
    circle(-30, 230)
    seth(45)
    fd(81)
    seth(0)
    fd(203)
    circle(5, 90)
    fd(10)
    circle(5, 90)
    fd(7)
    seth(40)
    circle(150, 10)
    seth(30)
    fd(40)
    end_fill()
    # 左手
    seth(70)
    fillcolor('#ffffff')
    begin_fill()
    circle(-30)
    end_fill()
    # 脚
    gotos(103.74, -182.59)
    seth(0)
    fillcolor('#ffffff')
    begin_fill()
    fd(15)
    circle(-15, 180)
    fd(90)
    circle(-15, 180)
    fd(10)
    end_fill()
    gotos(-96.26, -182.59)
    seth(180)
    fillcolor('#ffffff')
    begin_fill()
    fd(15)
    circle(15, 180)
    fd(90)
    circle(15, 180)
    fd(10)
    end_fill()
    # 右手
    gotos(-133.97, -91.81)
    seth(50)
    fillcolor('#ffffff')
    begin_fill()
    circle(30)
    end_fill()
    # 口袋
    gotos(-103.42, 15.09)
    seth(0)
    fd(38)
    seth(230)
    begin_fill()
    circle(90, 260)
    end_fill()
    gotos(5, -40)
    seth(0)
    fd(70)
    seth(-90)
    circle(-70, 180)
    seth(0)
    fd(70)
    # 铃铛
    gotos(-103.42, 15.09)
    fd(90)
    seth(70)
    fillcolor('#ffd200')
    # print(pos())
    begin_fill()
    circle(-20)
    end_fill()
    seth(170)
    fillcolor('#ffd200')
    begin_fill()
    circle(-2, 180)
    seth(10)
    circle(-100, 22)
    circle(-2, 180)
    seth(180 - 10)
    circle(100, 22)
    end_fill()
    goto(-13.42, 15.09)
    seth(250)
    circle(20, 110)
    seth(90)
    fd(15)
    dot(10)
    gotos(0, -150)
if __name__ == '__main__':
    setup(1.0, 1.0)
    title("Doraemon")
    bgcolor('skyblue')
    speed(0)
    pensize(3)
    hideturtle()
    Doraemon()
    gotos(300, -100)
    write('永\n远\n爱\n你', font=("Bradley Hand ITC", 50, "bold"))
    mainloop()

程序分析

此程序使用 Python 的 Turtle 模块绘制了一个哆啦A梦。

程序分为多个函数,每个函数用于绘制不同部分的图案。下面对每个函数进行具体分析:

01、gotos(x, y)

该函数用于控制画笔移动到给定坐标(x, y)处。

02、eyes()

该函数用于绘制哆啦A梦的眼睛,先通过循环改变画笔的方向和长度,使得眼睛呈现凹凸不平、呈现出立体感的效果。

03、beard()

该函数用于绘制哆啦A梦的胡须。

04、mouth()

该函数用于绘制哆啦A梦的嘴巴,先向下移动画笔,绘制出一条垂直向下的线,然后绘制出两个弧形,形成闭合的嘴巴。

05、scarf()

该函数用于绘制哆啦A梦的围巾。

06、nose()

该函数用于绘制哆啦A梦的鼻子。

07、black_eyes()

该函数用于绘制哆啦A梦的黑眼睛和眼珠子。

08、face()

该函数用于绘制哆啦A梦的脸,先绘制出一个圆形的头部,然后调用 eyes() 和 black_eyes() 函数绘制眼睛。

09、head()

该函数用于绘制哆啦A梦的头型,先使用 circle() 函数绘制一段曲线,然后调用 begin_fill() 函数进行填充。

10、Doraemon()

该函数是主要的函数,用于绘制整个哆啦A梦的头像。先分别调用 head(), scarf(), face(), nose(), mouth(), beard() 函数绘制哆啦A梦的头部、围巾、脸、鼻子、嘴巴、胡须。然后绘制出哆啦A梦的身体、脚、左手、口袋、铃铛和眼睛。

11、setup(), title() , bgcolor()

这几个函数用于设置窗口的大小、标题和背景颜色。

12、speed()

该函数用于设置画笔的速度。

13、pensize()

该函数用于设置画笔的粗细。

14、hideturtle()

该函数用于隐藏画笔。

15、write()

该函数用于在绘图窗口写字。

16、mainloop()

该函数用于保持绘图窗口一直打开,直到手动关闭。

运行结果

写在后面

感兴趣的小伙伴,赠送全套Python学习资料,包含面试题、简历资料等具体看下方。

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

img
img

二、Python必备开发工具

工具都帮大家整理好了,安装就可直接上手!img

三、最新Python学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

img

四、Python视频合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

img

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

img

六、面试宝典

在这里插入图片描述

在这里插入图片描述

简历模板在这里插入图片描述
若有侵权,请联系删除
好的,以下是使用 Python turtle 画只啦A的代码: ```python import turtle # 设置画笔颜色和填充颜色 turtle.pencolor('black') turtle.fillcolor('#00a0de') # 开始画啦A的头部 turtle.begin_fill() turtle.circle(80) turtle.end_fill() # 画啦A的耳朵 turtle.penup() turtle.goto(-50, 120) turtle.pendown() turtle.begin_fill() turtle.circle(20) turtle.end_fill() turtle.penup() turtle.goto(50, 120) turtle.pendown() turtle.begin_fill() turtle.circle(20) turtle.end_fill() # 画啦A的眼睛 turtle.penup() turtle.goto(-30, 100) turtle.pendown() turtle.fillcolor('white') turtle.begin_fill() turtle.circle(10) turtle.end_fill() turtle.penup() turtle.goto(30, 100) turtle.pendown() turtle.begin_fill() turtle.circle(10) turtle.end_fill() turtle.fillcolor('black') turtle.penup() turtle.goto(-30, 100) turtle.pendown() turtle.begin_fill() turtle.circle(5) turtle.end_fill() turtle.penup() turtle.goto(30, 100) turtle.pendown() turtle.begin_fill() turtle.circle(5) turtle.end_fill() # 画啦A的鼻子 turtle.penup() turtle.goto(0, 70) turtle.pendown() turtle.begin_fill() turtle.circle(10) turtle.end_fill() # 画啦A的嘴巴 turtle.penup() turtle.goto(-40, 50) turtle.pendown() turtle.pencolor('red') turtle.right(45) turtle.circle(50, 90) # 画啦A的身体 turtle.pencolor('black') turtle.fillcolor('#00a0de') turtle.penup() turtle.goto(0, -50) turtle.pendown() turtle.begin_fill() turtle.circle(100) turtle.end_fill() # 画啦A的手和脚 turtle.fillcolor('white') turtle.penup() turtle.goto(-80, -100) turtle.pendown() turtle.begin_fill() turtle.circle(20) turtle.end_fill() turtle.penup() turtle.goto(80, -100) turtle.pendown() turtle.begin_fill() turtle.circle(20) turtle.end_fill() turtle.penup() turtle.goto(-60, -180) turtle.pendown() turtle.begin_fill() turtle.circle(20) turtle.end_fill() turtle.penup() turtle.goto(60, -180) turtle.pendown() turtle.begin_fill() turtle.circle(20) turtle.end_fill() # 隐藏画笔 turtle.hideturtle() # 结束绘画 turtle.done() ``` 你可以将上面的代码复制到 Python IDE 中运行,即可在画布上看到一个可啦A
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值