小猪佩奇的4种python玩法,带你趣味学python!(一)

简介: 小猪佩奇的4种python玩法,带你趣味学python!(一)

1.利用python绘制一个小猪佩奇

turtle库是一个很好的python图形绘制库,利用它我们可以绘制各种各样的图形、小动物。这个库其实并不难,实际你怎么绘制这个图形,对应的代码,就跟着你的实际绘制图形的方向走下去,即可。PS:当你有孩子了,是不是既可以利用turtle交它们绘制某些图案,还可以培养他们的变成兴趣,好处很多哦!


from turtle import *
# 绘制鼻子
def nose(x,y):
    penup()
    goto(x,y)
    pendown()
    setheading(-30)
    begin_fill()
    a=0.4
    for i in range(120):
        if 0<=i<30 or 60<=i<90:
            a=a+0.08
            left(3) 
            forward(a) 
        else:
            a=a-0.08
            left(3)
            forward(a)
        end_fill()
    penup()
    setheading(90)
    forward(25)
    setheading(0)
    forward(10)
    pendown()
    pencolor(255,155,192)
    setheading(10)
    begin_fill()
    circle(5)
    color(160,82,45)
    end_fill()
    penup()
    setheading(0)
    forward(20)
    pendown()
    pencolor(255,155,192)
    setheading(10)
    begin_fill()
    circle(5)
    color(160,82,45)
    end_fill()
# 绘制头部
def head(x,y):
    color((255,155,192),"pink")
    penup()
    goto(x,y)
    setheading(0)
    pendown()
    begin_fill()
    setheading(180)
    circle(300,-30)
    circle(100,-60)
    circle(80,-100)
    circle(150,-20)
    circle(60,-95)
    setheading(161)
    circle(-300,15)
    penup()
    goto(-100,100)
    pendown()
    setheading(-30)
    a=0.4
    for i in range(60):
        if 0<=i<30 or 60<=i<90:
            a=a+0.08
            left(3) 
            forward(a) 
        else:
            a=a-0.08
            left(3)
            forward(a)
    end_fill()
# 绘制耳朵
def ears(x,y): 
    color((255,155,192),"pink")
    penup()
    goto(x,y)
    pendown()
    begin_fill()
    setheading(100)
    circle(-50,50)
    circle(-10,120)
    circle(-50,54)
    end_fill()
    penup()
    setheading(90)
    forward(-12)
    setheading(0)
    forward(30)
    pendown()
    begin_fill()
    setheading(100)
    circle(-50,50)
    circle(-10,120)
    circle(-50,56)
    end_fill()
# 绘制眼睛
def eyes(x,y):
    color((255,155,192),"white")
    penup()
    setheading(90)
    forward(-20)
    setheading(0)
    forward(-95)
    pendown()
    begin_fill()
    circle(15)
    end_fill()
    color("black")
    penup()
    setheading(90)
    forward(12)
    setheading(0)
    forward(-3)
    pendown()
    begin_fill()
    circle(3)
    end_fill()
    color((255,155,192),"white")
    penup()
    setheading(90)
    forward(-25)
    setheading(0)
    forward(40)
    pendown()
    begin_fill()
    circle(15)
    end_fill()
    color("black")
    penup()
    setheading(90)
    forward(12)
    setheading(0)
    forward(-3)
    pendown()
    begin_fill()
    circle(3)
    end_fill()
# 绘制腮帮
def cheek(x,y):
    color((255,155,192))
    penup()
    goto(x,y)
    pendown()
    setheading(0)
    begin_fill()
    circle(30)
    end_fill()
# 绘制嘴巴
def mouth(x,y): 
    color(239,69,19)
    penup()
    goto(x,y)
    pendown()
    setheading(-80)
    circle(30,40)
    circle(40,80)
# 绘制身体
def body(x,y):
    color("red",(255,99,71))
    penup()
    goto(x,y)
    pendown()
    begin_fill()
    setheading(-130)
    circle(100,10)
    circle(300,30)
    setheading(0)
    forward(230)
    setheading(90)
    circle(300,30)
    circle(100,3)
    color((255,155,192),(255,100,100))
    setheading(-135)
    circle(-80,63)
    circle(-150,24)
    end_fill()
# 绘制手
def hands(x,y):
    color((255,155,192))
    penup()
    goto(x,y)
    pendown()
    setheading(-160)
    circle(300,15)
    penup()
    setheading(90)
    forward(15)
    setheading(0)
    forward(0)
    pendown()
    setheading(-10)
    circle(-20,90)
    penup()
    setheading(90)
    forward(30)
    setheading(0)
    forward(237)
    pendown()
    setheading(-20)
    circle(-300,15)
    penup()
    setheading(90)
    forward(20)
    setheading(0)
    forward(0)
    pendown()
    setheading(-170)
    circle(20,90)
# 绘制脚
def foot(x,y):
    pensize(10)
    color((240,128,128))
    penup()
    goto(x,y)
    pendown()
    setheading(-90)
    forward(40)
    setheading(-180)
    color("black")
    pensize(15)
    forward(20)
    pensize(10)
    color((240,128,128))
    penup()
    setheading(90)
    forward(40)
    setheading(0)
    forward(90)
    pendown()
    setheading(-90)
    forward(40)
    setheading(-180)
    color("black")
    pensize(15)
    forward(20)
# 绘制尾巴
def tail(x,y):
    pensize(4)
    color((255,155,192))
    penup()
    goto(x,y)
    pendown()
    setheading(0)
    circle(70,20)
    circle(10,330)
    circle(70,30)
# 设置画布和画笔
def setting(): 
    pensize(4)
    hideturtle()
    colormode(255)
    color((255,155,192),"pink")
    setup(840,500)
    speed(10)
def main():
    setting()         # 画布和画笔设置
    nose(-100,100)    # 鼻子
    head(-69,167)     # 头
    ears(0,160)       # 耳朵
    eyes(0,140)       # 眼睛
    cheek(80,10)      # 腮帮
    mouth(-20,30)     # 嘴巴
    body(-32,-8)      # 身体
    hands(-56,-45)    # 手
    foot(2,-177)      # 脚
    tail(148,-155)    # 尾巴
    done()            # 结束
if __name__ == '__main__':
    main()


结果如下:

image.png

相关文章
|
4月前
|
Python
Python黑魔法揭秘:闭包与装饰器的高级玩法,让你代码飞起来
【7月更文挑战第7天】Python的闭包和装饰器是提升代码效率的神器。闭包是能记住外部作用域变量的内部函数,常用于动态函数创建。示例中,`make_multiplier_of`返回一个保留`n`值的闭包。装饰器则是一个接收函数并返回新函数的函数,用于在不修改原函数情况下添加功能,如日志或性能追踪。`@my_decorator`装饰的`say_hello`函数在执行时会自动加上额外操作。掌握这两者,能让Python代码更优雅、强大。**
33 1
|
Python
编程新手?跟着这个教程,用Python画出小猪佩奇
编程新手?跟着这个教程,用Python画出小猪佩奇
205 1
编程新手?跟着这个教程,用Python画出小猪佩奇
|
开发者 Python
Python Excel操作新玩法:从零到高手掌握openpyxl
Python Excel操作新玩法:从零到高手掌握openpyxl
115 0
|
存储 NoSQL Redis
Python Redis数据库新玩法:从零到高手掌握操作技巧
Python Redis数据库新玩法:从零到高手掌握操作技巧
125 0
|
数据采集 自然语言处理 前端开发
python,你也和小猪佩奇一样社会了!
python,你也和小猪佩奇一样社会了!
96 0
|
Python
哆啦A梦和小猪佩奇(Python实现)
哆啦A梦和小猪佩奇(Python实现)
234 0
|
小程序 数据安全/隐私保护 Python
Python print 函数 \r 转义字符的玩法及解析——转圈效果、动态表情、小数点加载、进度条
Python print 函数 \r 转义字符的玩法及解析——转圈效果、动态表情、小数点加载、进度条
445 0
|
Python
Python画樱花树代码和小猪佩奇
Python画樱花树代码和小猪佩奇
|
12天前
|
安全 数据处理 开发者
Python中的多线程编程:从入门到精通
本文将深入探讨Python中的多线程编程,包括其基本原理、应用场景、实现方法以及常见问题和解决方案。通过本文的学习,读者将对Python多线程编程有一个全面的认识,能够在实际项目中灵活运用。