您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:基于Python实现的恋爱对话小程序详解

51自学网 2022-02-21 10:36:36
  python
这篇教程基于Python实现的恋爱对话小程序详解写得很实用,希望能帮到您。

导语

哈喽!大家好~我是木木子啦!自从写了一些表白类型的一些小脚本、小程序之后,越发不可收拾了,哈哈哈。

常常会有小粉丝说:这......小程序不够啊!刚表白去了,但是被拉黑了。

那我不答应了,我得努努力:多多益善给大家开发一些更有趣的各种各样的适合表白的小程序!

让每个人都争取过年带着对象回家过年~嘿嘿嘿

今天,木木子推荐一个定制表白恋爱的项目:恋爱对话小程序

这个简单的项目,居然还蛮有趣的——如何操作?快来了解下。

一、小简介

turtle:绘图模块

PySimpleGUI:弹框制作模块(一个非常简单好用的Python图形界面库(PysimpleGUI))

1)环境安装

本文所用到的环境:Python3、Pycharm、PySimpleGUI、Turtle、time模块。

环境安装:pip install +模块名 或带豆瓣镜像源pip install -i 

https://pypi.douban.com/simple/ +模块名

二、代码演示

1)导入模块

from turtle import *import timeimport PySimpleGUI as sg     

2)倒计时

def draw_count_down(i):        #倒数    bgcolor('black')    speed(0)    up()    goto(-50,-100)    color('white')    write(i, align="center",font=('Times New Roman', 200, 'bold'))    time.sleep(1)

3)画2份不同的礼物

def draw_people():    #画小人    up()    fillcolor()    begin_fill()    color('black','white')    goto(-300, 50)  # 脖子坐标    down()    circle(75)  # 半径为75的脑袋    end_fill()    right(90)    forward(175)  # 身体的长度175像素    right(45)    forward(100)  # 腿长100像素    up()    goto(-300, -120)  # 画另一条腿    down()    left(90)    forward(100)    up()    goto(-300, -5)  # 手臂坐标    down()    left(45)    forward(100)  # 第一只手臂长度    left(45)    forward(67)  # 手掌长度    up()    goto(-300, -40)  # 第二只手臂坐标    down()    right(45)    forward(100)  # 第二只手臂长度    right(45)    forward(67)    up()    goto(-330, 155)  # 第一只眼睛起始坐标    down()    right(45)    forward(50)  # 眼睛长度为50    up()    goto(-270, 155)  # 第二只眼睛起始坐标    down()    forward(50)    up()    pencolor('#F39F79')    goto(-340,100) #红脸蛋第一只眼    seth(0)    down()    backward(40)    up()    goto(-260, 100)  # 红脸蛋第二只眼    down()    forward(40)    time.sleep(1) def draw_heart(size):            # 画爱心    color('red', 'red')    down()    setheading(150)    begin_fill()    forward(size)    circle(size * -3.745, 45)    circle(size * -1.431, 165)    left(120)    circle(size * -1.431, 165)    circle(size * -3.745, 45)    forward(size)    end_fill() def send_heart():                  #发射爱心    up()    goto(-50, -22)    draw_heart(14)    up()    goto(120, -22)    draw_heart(25)    penup()    goto(305, -22)    draw_heart(43) def wr_character():    up()    goto(-50,-200)    pencolor('black')    write('惊', font=('行楷', 60, 'bold'))    up()    goto(50,-200)    write('不', font=('行楷', 60, 'bold'))    up()    goto(150,-200)    write('惊', font=('行楷', 60, 'bold'))    up()    goto(250,-200)    write('喜', font=('行楷', 60, 'bold')) def draw_pupu():       #画xxxx    up()    shapesize(10, 2)    speed(2)    fillcolor()    color('#805140','#805140')    begin_fill()    goto(-50, -20)    down()    circle(20)    end_fill()    begin_fill()    up()    goto(-50, -80)    down()    circle(40)    end_fill()    begin_fill()    up()    goto(10, -110)    seth(90)    down()    circle(60,180)    seth(0)    forward(120)    end_fill()

4)二种选择是不同的绘图倒计时之后就是绘制你回答的那个礼物。

def present_good():        #选择是送的礼物    setup(1000,700)    pensize(10)    hideturtle()     numbers=[5,4,3,2,1]      #进行倒数    for i in numbers:        draw_count_down(i)        undo()    draw_moon()    draw_people()    send_heart()    wr_character()    done() def present_bad():     #选择不是送的礼物    setup(1000, 700)    pensize(10)    hideturtle()    numbers=[5,4,3,2,1]      #进行倒数    for i in numbers:        draw_count_down(i)        undo()    draw_moon()    draw_people()    draw_pupu()    wr_character()    done()

5)弹窗设计的文字(可修改)

layout=[                                    #弹框内容设计    [sg.Text('请输入你的名字:')],[sg.Input()],    [sg.Text('请回答下面这个问题哦!')],    [sg.Text('我是你喜欢的类型嘛?')],    [sg.Button('是的是的')],[sg.Button('不是')]] sg.popup('你好呀!我是你的好朋友为你定制的专属男朋友','请按OK键继续') #这是一个简易弹框time.sleep(1)window=sg.Window('小可爱',layout)event,value=window.read()window.close()if event == '是的是的':    sg.popup(f'{value[0]}请按OK键接收男朋友的礼物!
Django admin实现TextField字段changelist页面换行、空格正常显示
分享6 个值得收藏的 Python 代码
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。