值此圣诞元旦即将来临之际,想着编一个表白的代码,虽然自己现在用不上,但说不定能助人为乐呢。
主要是使用python的tkinter库和turtle库,实现效果如下:
初始效果:

点击关闭窗口:

点击不要按钮:

点击好啊按钮:

代码如下:

import sys
import tkinter
from tkinter import messagebox
from turtle import *
import time
import randomclass Test:tok = tkinter.Tk(className='一个问题')#设置屏幕居中width = 200height = 100screenwidth = tok.winfo_screenwidth()screenheight = tok.winfo_screenheight()alignstr = '%dx%d+%d+%d' % (width, height, (screenwidth - width) / 2, (screenheight - height) / 2)tok.geometry(alignstr)frame = tkinter.Frame(tok)frame.pack()
# 初始化主界面格式def __init__(self):self.label = tkinter.Label(self.frame)self.label['text'] = '要不要做我女朋友?'self.label.pack(side=tkinter.TOP)self.button1=tkinter.Button(self.frame,text="不要",command=self.no)self.button1.pack(side=tkinter.RIGHT)self.button2=tkinter.Button(self.frame,text="好啊",fg='red',command=self.yes)self.button2.pack(side=tkinter.LEFT)# 点击不要按钮触发def no(self):top = tkinter.Toplevel()top.title('怎么敢的!')top.geometry("220x100")tkinter.Label(top, text='我劝你好好想想,给你机会得把握住啊!').grid(row=1, column=1, padx=1, pady=1)# 画樱花树def Tree(self,branch, t):time.sleep(0.0005)if branch > 3:if 8 <= branch <= 12:if random.randint(0, 2) == 0:t.color('snow')  # 白else:t.color('lightcoral')  # 淡珊瑚色t.pensize(branch / 3)elif branch < 8:if random.randint(0, 1) == 0:t.color('snow')else:t.color('lightcoral')  # 淡珊瑚色t.pensize(branch / 2)else:t.color('sienna')  # 赭(zhě)色t.pensize(branch / 10)  # 6t.forward(branch)a = 1.5 * random.random()t.right(20 * a)b = 1.5 * random.random()self.Tree(branch - 10 * b, t)t.left(40 * a)self.Tree(branch - 10 * b, t)t.right(20 * a)t.up()t.backward(branch)t.down()# 掉落的花瓣def Petal(self,m, t):for i in range(m):a = 200 - 400 * random.random()b = 10 - 20 * random.random()t.up()t.forward(b)t.left(90)t.forward(a)t.down()t.color('lightcoral')  # 淡珊瑚色t.circle(1)t.up()t.backward(a)t.right(90)t.backward(b)#点击要的按钮触发def yes(self):# 绘图区域try:t = Turtle()# 画布大小w = Screen()t.hideturtle()  # 隐藏画笔t.speed(0)# 定义速度delay(0)# 设置延迟t.getscreen().tracer(5, 0)w.screensize(bg='wheat')  # wheat小麦t.left(90)t.up()t.backward(150)t.down()t.color('sienna')# 画樱花的躯干self.Tree(60, t)# 掉落的花瓣self.Petal(200, t)pendown()pencolor('red')write("不许反悔哦,这一树❀都给你", align="center", font=("方正黄草简体", 24, "bold"))time.sleep(5)sys.exit()# 退出程序done()except Exception:sys.exit()def callback():  # 如果用户点击关闭窗口messagebox.showwarning('温馨提示', '别费劲了,赶紧做选择吧!')
app=Test()
app.tok.protocol("WM_DELETE_WINDOW", callback)  # 如果用户关闭窗口则执行callback函数
app.tok.resizable(False, False)# 设置不允许改变窗口大小
# app.tok.overrideredirect(1) # 隐藏标题栏
app.tok.attributes("-toolwindow", 2)# 只保留关闭按钮
app.tok.mainloop()

最后打包成exe文件就可以发给想要表白的人啦。
其中画樱花树的代码来自Python——画一棵漂亮的樱花树(不同种樱花+玫瑰+圣诞树喔)这篇博客,各位也可以根据喜好替换不同类型的树,以及对话框里的内容。由于还要准备期末考试,所以代码很粗糙,逻辑有些混乱,大家可自行优化。
最后祝大家有对象的长长久久,没对象的早日脱单。
以上。

Python tkinter+turtle制作表白神器相关推荐

  1. python写520_用Python做一个520表白神器,值得收藏

    本文最后给出了打包好的软件,无需安装Python环境和各种依赖,直接下载软件,解压后,双击exe文件即可使用. 先来看一下具体的效果. 运行程序. 用Python做一个520表白神器,值得收藏 点击「 ...

  2. python turtle 画老鼠,python用turtle制作一个猫捉老鼠游戏

    CSDN网友写的猫捉老鼠游戏代码 看着不错 大家借鉴一下 import turtle import time import random def up(): jerry.setheading(90) ...

  3. python制作表白神器_用Python做一个520表白神器,值得收藏

    本文最后给出了打包好的软件,无需安装Python环境和各种依赖,直接下载软件,解压后,双击exe文件即可使用. 先来看一下具体的效果. 运行程序. 点击「选择图片」 选择JPG/JPGE/PNG三种中 ...

  4. python制作表白软件手机版_用Python做一个情人节表白神器

    思路来自于「Python 编程时光」,我在其之上改进了一下,主要是通过tkinter编写一个界面方便使用,大家可以关注「Python 编程时光」这一良心公众号. 本文最后给出了打包好的软件,无需安装P ...

  5. python制作表白神器_python3实现表白神器

    本文实例为大家分享了使用python3制作的表白神器,供大家参考,具体内容如下 使用python3制作的小玩意,哪里需要改造的,望各位评论一下! #coding=utf-8 #第一个小项目/love ...

  6. python制作表白神器_用Python做一个情人节表白神器

    思路来自于「Python 编程时光」,我在其之上改进了一下,主要是通过tkinter编写一个界面方便使用,大家可以关注「Python 编程时光」这一良心公众号. 本文最后给出了打包好的软件,无需安装P ...

  7. python制作表白神器_关于python:用-Python-写个七夕表白神器

    明天是七夕节,相比于现代人借鉴的 502,不对是 520,七夕才是中国传统意义上的情人节,本文分享几个 Python 表白程序,情侣能够现学现用,独身的话也能够先珍藏一下,说不定下次就用上了. 爱心树 ...

  8. 圣诞节这么浪漫的日子,教你用Python制作表白神器—照片墙,操作起来哦

    哈喽.大家好,我是恰恰~今天教大家用Python来制作一个表白神器-照片墙,属于我们程序员的小浪漫,虽然来的晚,但是收藏学会了,以后都用的到哦~ 看一下效果图: 要什么样的,图案都可以自定义的 在这里 ...

  9. python制作表白神器_用Python个女神做一个表白神器

    用Python给女神表白 情人节刚刚过去,但男同胞们对女神的暗恋愈加热烈,想尽一切办法表白,今天,咱们就用Python制作一个表白神器. 程序介绍 运用pygame制作一个小游戏,当女神用鼠标点击&q ...

最新文章

  1. 你在Java中用过动态规划吗?
  2. C++类的使用(二)—— explicit构造与const成员赋值
  3. 房价预测(HackerRank)
  4. zabbix安装与使用
  5. Codeforces Round #703 (Div. 2) Guessing the Greatest C1 C2 二分
  6. Apache和PHP结合、Apache默认虚拟主机
  7. java的io流的file类_java IO流 (一) File类的使用
  8. 关于使用_bstr_t的一个坑
  9. Python编程-继承和接口
  10. 安卓内录声音软件scr_录屏内录大师软件下载
  11. 阿里云云计算工程师认证(ACP)分享
  12. png怎么转ico图标?一招教你如何图片转格式
  13. 【python第三方库】playwright简要入门
  14. mysql建表语句转oracle_求大神将该MySQL建表语句改为oracle的,感激不尽。
  15. AEC 声学回声消除
  16. 最新服务器主流硬盘,主流服务器的raid(磁盘阵列)配置
  17. 网友发帖问阿里P7和协和主治医师谁更成功,BAT员工纷纷嘲笑.
  18. 3、基于竞速小车 实现 华为hi lens红绿灯识别操作
  19. 0基础学RS(三)路由器基本配置
  20. pdf转换成excel,pdf转excel方法

热门文章

  1. CentOS7修改ip为静态
  2. Air780E模块AT开发环境搭建
  3. python识别几何图形拼成的图案_自动驾驶汽车视觉- 图像特征提取与匹配技术
  4. ACCESS高级注入教程
  5. AI (Adobe Illustrator)详细用法(一)
  6. 评分addmodule 绝对值评分 8种方法可视化你的单细胞基因集打分gsea 缺氧评分
  7. 第三十三周学习生活总结
  8. C++: 有限元法 (FEM) 应用于线性两点 一个空间维度上的边界值问题 (附完整源码)
  9. 小米10至尊纪念版可以升级鸿蒙系统吗,顶级配置纪念十年:小米10至尊纪念版发布...
  10. Ping命令和网络端口