zoukankan      html  css  js  c++  java
  • python画猫并打包成EXE文件

    因python自带有海龟画图库,尝试给爱猫的小仙女来画个猫咪。

    1.代码如下

    from turtle import *
    #两个函数用于画心
    def curvemove():
        for i in range(200):
            right(1)
            forward(0.1)
    def heart(x,y,s):
        pu()
        goto(x,y)
        seth(s)
        pendown()
        begin_fill()
        left(140)
        forward(11.1)
        curvemove()
        left(120)
        curvemove()
        forward(11.1)
        end_fill()
    #初始化
    setup(600,600)
    pu()
    goto(60,100)
    pensize(4)
    pendown()
    #画左半边的头
    for i in range(150,212,2):
        seth(i)
        fd(3)
    seth(145)
    fd(50)
    left(125)
    fd(50)
    for i in range(240,318,2):
        if i==290:
            seth(190)
            fd(10)
            seth(10)
            fd(10)
        elif i==300:
            seth(200)
            fd(10)
            seth(20)
            fd(10)
        seth(i)
        fd(3)
    #画右半边的头
    pu()
    goto(60,100)
    pendown()
    seth(45)
    fd(50)
    right(125)
    fd(50)
    for i in range(-60,-138,-2):
        if i==-110:
            seth(-10)
            fd(10)
            seth(170)
            fd(10)
        elif i==-120:
            seth(-20)
            fd(10)
            seth(160)
            fd(10)
        seth(i)
        fd(3)
    #头部到这里就画好外观了
    seth(-40)
    fd(52)
    seth(-135)
    fd(45)
    pu()
    seth(-105)
    fd(5)
    pendown()
    fd(17)
    for i in range(130,106,-3):
        seth(i)
        fd(2.5)
    for i in range(106,30,-10):
        seth(i)
        fd(2)
    seth(38)
    fd(25)
    seth(135)
    fd(31)
    seth(169)
    fd(6)
    seth(270)
    fd(105)
    #右边的身子画好了
    #开始画左边的身子
    pu()
    goto(-52,-30)
    pendown()
    seth(220)
    fd(48)#52
    seth(250)
    fd(3)
    seth(270)
    fd(3)
    seth(290)
    fd(2)
    seth(-40)
    fd(44)
    seth(228)
    fd(20)
    seth(5)
    fd(22)
    #画叉腰的动作
    pu()
    goto(-52,-84)
    seth(133)
    pendown()
    fd(22)
    seth(90)
    fd(2)
    seth(60)
    fd(2)
    seth(45)
    fd(29)
    seth(0)
    fd(3)
    seth(-93)
    fd(102)
    #叉腰动作结束 接下来画嘴巴 眼睛
    pu()
    goto(-43,38)
    seth(0)
    pendown()
    begin_fill()
    circle(5)
    end_fill()
    pu()
    fd(108)
    pendown()
    begin_fill()
    circle(5)
    end_fill()
    #调色环节
    pu()
    goto(60,24)
    pencolor("pink")
    pensize(6)
    seth(225)
    pendown()
    fd(7)
    pu()
    goto(70,24)
    seth(225)
    pendown()
    fd(7)
    #右半边调色完毕
    pu()
    goto(-49,24)
    seth(225)
    pendown()
    fd(7)
    #画嘴巴
    pu()
    pensize(4)
    pencolor("black")
    goto(5,21)
    seth(-45)
    pendown()
    fd(5)
    goto(5,21)
    seth(225)
    fd(5)
    #左边的颜色
    pu()
    pencolor("pink")
    pensize(6)
    goto(-39,24)
    seth(225)
    pendown()
    fd(7)
    
    #给耳朵填充颜色
    pu()
    goto(-40,92)
    seth(80)
    pendown()
    fillcolor("pink")
    begin_fill()
    circle(14,360,3)
    end_fill()
    pu()
    goto(72,100)
    seth(-74)
    pendown()
    begin_fill()
    circle(14,360,3)
    end_fill()
    
    #画1颗心
    speed(1000)
    color('red', 'pink')
    pensize(2)
    heart(0,140,0)
    exitonclick()

    2.打包成EXE文件:

    安装 pyinstaller

    pip install pyinstaller

    然后进入上面代码文件存放的路径:cd  路径

    pyinstaller -F ./cat.py   (改成你的实际路径)

    然后在生成的dist文件夹下有一个EXE文件

     打开EXE文件运行效果如下

     哈哈,她应该会喜欢吧。

  • 相关阅读:
    MySQL:Mysql字符串截取函数SUBSTRING的用法说明
    windows2003+iis6.0+php(fastcgi)5.3+wincache+memcached
    apache 80端口未被占用,启动不了的问题
    服务器端口大全
    UCenter 表结构
    “来自客户端名 a 的远程会话超出了所允许的失败登录最大次数。强行终止了会话。”原因及解决方法
    开发云应用从何入手?
    Building Nutch: Open Source Search
    Nutch0.9加入ICTCLAS 支持中文分词等(转)
    OWL解惑 :AllValuesFrom与Range的区别 关于Domain和Range
  • 原文地址:https://www.cnblogs.com/huny/p/12821903.html
Copyright © 2011-2022 走看看