用python画一只可爱的皮卡丘实例

yipeiwu_com5年前Python基础

效果图

#!/usr/bin/env python 
# -*- coding:utf-8 -*-
from turtle import *
'''
绘制皮卡丘头部
'''
def face(x,y):
 """画脸"""
 begin_fill()
 penup()
 # 将海龟移动到指定的坐标
 goto(x, y)
 pendown()
 # 设置海龟的方向
 setheading(40)

 circle(-150, 69)
 fillcolor("#FBD624")
 # 将海龟移动到指定的坐标
 
 penup()
 goto(53.14, 113.29)
 pendown()
 
 setheading(300)
 circle(-150, 30)
 setheading(295)
 circle(-140, 20)
 print(position())
 forward(5)
 setheading(260)
 circle(-80, 70)
 print(position())
 penup()
 goto(-74.43,-79.09)
 pendown()


 penup()
 # 将海龟移动到指定的坐标
 goto(-144,103)
 pendown()
 setheading(242)
 circle(110, 35)
 right(10)
 forward(10)
 setheading(250)
 circle(80, 115)
 print(position())

 penup()
 goto(-74.43,-79.09)
 pendown()
 setheading(10)
 penup()
 goto(-144, 103)

 pendown()
 penup()
 goto(x, y)
 pendown()


 end_fill()

 # 下巴
 penup()
 goto(-50, -82.09)
 pendown()
 pencolor("#DDA120")
 fillcolor("#DDA120")
 begin_fill()
 setheading(-12)
 circle(120, 25)
 setheading(-145)
 forward(30)
 setheading(180)
 circle(-20, 20)
 setheading(143)
 forward(30)
 end_fill()
 # penup()
 # # 将海龟移动到指定的坐标
 # goto(0, 0)
 # pendown()

def eye():
 """画眼睛"""
 # 左眼
 color("black","black")
 penup()
 goto(-110, 27)
 pendown()
 begin_fill()
 setheading(0)
 circle(24)
 end_fill()
 # 左眼仁
 color("white", "white")
 penup()
 goto(-105, 51)
 pendown()
 begin_fill()
 setheading(0)
 circle(10)
 end_fill()
 # 右眼
 color("black", "black")
 penup()
 goto(25, 40)
 pendown()
 begin_fill()
 setheading(0)
 circle(24)
 end_fill()
 # 右眼仁
 color("white", "white")
 penup()
 goto(17, 62)
 pendown()
 begin_fill()
 setheading(0)
 circle(10)
 end_fill()
def cheek():
 """画脸颊"""
 # 右边
 color("#9E4406", "#FE2C21")
 penup()
 goto(-130, -50)
 pendown()
 begin_fill()
 setheading(0)
 circle(27)
 end_fill()

 # 左边
 color("#9E4406", "#FE2C21")
 penup()
 goto(53, -20)
 pendown()
 begin_fill()
 setheading(0)
 circle(27)
 end_fill()


def nose():
 """画鼻子"""
 color("black", "black")
 penup()
 goto(-40, 38)
 pendown()
 begin_fill()
 circle(7,steps = 3)
 end_fill()
def mouth():
 """画嘴"""
 color("black", "#F35590")
 # 嘴唇
 penup()
 goto(-10, 22)
 pendown()
 begin_fill()
 setheading(260)
 forward(60)
 circle(-11, 150)
 forward(55)
 print(position())
 penup()
 goto(-38.46, 21.97)
 pendown()
 end_fill()

 # 舌头
 color("#6A070D", "#6A070D")
 begin_fill()
 penup()
 goto(-10.00, 22.00)
 pendown()
 penup()
 goto(-14.29, -1.7)
 pendown()
 penup()
 goto(-52, -5)
 pendown()
 penup()
 goto(-60.40, 12.74)
 pendown()
 penup()
 goto(-38.46, 21.97)
 pendown()
 penup()
 goto(-10.00, 22.00)
 pendown()

 end_fill()

 color("black","#FFD624")

 penup()
 goto(-78, 15)
 pendown()
 begin_fill()
 setheading(-25)
 for i in range(2):
  setheading(-25)
  circle(35, 70)

 end_fill()
 color("#AB1945", "#AB1945")
 penup()
 goto(-52, -5)
 pendown()
 begin_fill()
 setheading(40)
 circle(-33, 70)
 goto(-16,-1.7)
 penup()
 goto(-18,-17)
 pendown()
 setheading(155)
 circle(25, 70)
 end_fill()


def ear():
 """画耳朵"""
 # 左耳
 color("black","#FFD624")
 penup()
 goto(-145, 93)
 pendown()
 begin_fill()
 setheading(165)
 circle(-248,50)
 right(120)
 circle(-248,50)
 end_fill()
 color("black", "black")
 penup()
 goto(-240, 143)
 pendown()
 begin_fill()
 setheading(107)
 circle(-170, 25)
 left(80)
 circle(229, 15)
 left(120)
 circle(300, 15)
 end_fill()

 # 右耳
 color("black", "#FFD624")
 penup()
 goto(30, 136)
 pendown()
 begin_fill()
 setheading(64)
 circle(-248, 50)

 right(120)
 circle(-248, 50)
 end_fill()
 color("black", "black")
 penup()
 goto(160, 200)
 pendown()
 begin_fill()
 setheading(52)
 circle(170, 25)
 left(116)
 circle(229, 15)
 left(71)
 circle(-300, 15)
 end_fill()
 def setting():
 """设置参数"""
 pensize(2)
 # 隐藏海龟
 hideturtle()
 speed(10)
def main():
 """主函数"""
 setting()
 face(-132,115)
 eye()
 cheek()
 nose()
 mouth()
 ear()
 done()

if __name__ == '__main__':
 main()

以上这篇用python画一只可爱的皮卡丘实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python3.7 使用pymssql往sqlserver插入数据的方法

python3.7 使用pymssql往sqlserver插入数据 import pymssql conn = pymssql.connect(host='szs',server='...

python线程中同步锁详解

在使用多线程的应用下,如何保证线程安全,以及线程之间的同步,或者访问共享变量等问题是十分棘手的问题,也是使用多线程下面临的问题,如果处理不好,会带来较严重的后果,使用python多线程中...

python采集博客中上传的QQ截图文件

哎,以前写博文的时候没注意,有些图片用QQ来截取,获得的图片文件名都是类似于QQ截图20120926174732-300×15.png的形式,昨天用ftp备份网站文件的时候发现,中文名在...

python+django+sql学生信息管理后台开发

python+django+sql学生信息管理后台开发

一、功能 实现对学生对个人信息的增删查改 实现后台对所有学生信息的操作 二、平台 windows+pycharm(python开发工具) 三、逻辑框图 四、代码展示 此后台采用的是M...

对numpy中布尔型数组的处理方法详解

布尔数组的操作方式主要有两种,any用于查看数组中是否有True的值,而all则用于查看数组是否全都是True。 如果用于计算的时候,布尔量会被转换成1和0,True转换成1,False...