专栏首页Crossin的编程教室送你个情人节礼物:抖音同款表白神器

送你个情人节礼物:抖音同款表白神器

又到了一年一度的情人节!大家都准备送什么给自己心仪的对象呢?

鲜花、巧克力都太俗套了,今天给大家带来一个抖音上看到的表白神器 — 用Python写一个告白程序,让她看到你满满的爱(tao)意(lu)。

先上效果:

代码:

from tkinter import *
from tkinter import messagebox
import random

def no_close():
    return

#关闭所有窗口
def close_all_window():
    window.destroy()

#关闭窗口提示
def close_window():
    messagebox.showinfo(title="不要嘛~", message="不选好不许走!")

#“好的”窗口
def Love():
    love = Toplevel(window)
    love.geometry("300x100+580+250")
    love.title("爱你么么哒~")
    btn = Button(love, text="在一起!", width=10, height=2, command=close_all_window)
    btn.place(x=100, y=30)
    love.protocol("WM_DELETE_WINDOW", no_close)

window = Tk()
window.title("嗨,小姐姐") #窗口标题
window.geometry("360x640+550+50") #窗口大小
window.protocol("WM_DELETE_WINDOW", close_window) #窗口关闭
label = Label(window, text="观察你很久了", font=("微软雅黑", 18))
label.place(x=120, y=50)
label = Label(window, text="做我女朋友好不好?", font=("微软雅黑", 24))
label.place(x=70, y=100)
btn1 = Button(window, text="好", width=15, height=2, command=Love)
btn1.place(x=110, y=200)
# “不好”按钮
pos = [110, 300]
btn2 = Button(window, text="不好", width=15, height=2)
btn2.place(x=pos[0], y=pos[1])
def on_enter(e):
    global pos
    dx = random.randint(100, 200)
    dy = random.randint(100, 300)
    print(pos,dx,dy)
    pos = (pos[0] + dx) % 200, (pos[1] - 250 + dy) % 350 + 250
    btn2.place(x=pos[0], y=pos[1])
btn2.bind("<Enter>", on_enter)
#显示窗口,消息循坏
window.mainloop()

然后用 pyinstaller 将程序打包为 exe 文件后就可以发送给她啦!

具体操作:

在保存.py文件的目录下,运行 cmd,没有 pyinstaller 的先通过 pip 安装,已经有了的直接 pyinstaller –F –w xxx.py 即可。

本文分享自微信公众号 - Crossin的编程教室(crossincode)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-02-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 我在Python的艳阳里,大雪纷飞

    你在南方的艳阳里大雪纷飞;我在北方的寒夜里四季如春。 昨天,南方不少地区,尤其是长江中下游一带迎来了一场难得的大雪。虽说给出行带来极大的不便,但也让我们这些没怎...

    Crossin先生
  • 【每日一坑 5】 文字竖排

    上次的坑,找文件,其实我在出题的时候,并不知道怎么做,但我知道python应该可以搞定这件事情。这种情况很常见,你有时候需要一个小程序来帮你解决点手头的工作,你...

    Crossin先生
  • Python-Excel 模块哪家强?

    0. 前言 从网页爬下来的大量数据需要清洗? 成堆的科学实验数据需要导入 Excel 进行分析? 有成堆的表格等待统计? 作为人生苦短的 Python 程序员,...

    Crossin先生
  • 从YOLOv1到YOLOv3,目标检测的进化之路

    这是继 RCNN,fast-RCNN 和 faster-RCNN之后,Ross Girshick 针对 DL 目标检测速度问题提出的另外一种框架。YOLO V1...

    AI科技大本营
  • Linux如何判断自己的服务器是否被入侵

    如何判断自己的服务器是否被入侵了呢?仅仅靠两只手是不够的,但两只手也能起到一些作用,我们先来看看UNIX系统上一些入侵检测方法,以LINUX和solaris为例...

    小小科
  • Spark RDD深入浅析

    Spark里的RDD是什么?在Spark如火如荼的今天,很多面试官都会问这个问题。想必答案大家都脱口而出--就是弹性分布式数据集嘛,但是它怎么就弹性了?它怎么分...

    大神带我来搬砖
  • Linux如何判断自己的服务器是否被入侵

    如何判断自己的服务器是否被入侵了呢?仅仅靠两只手是不够的,但两只手也能起到一些作用,我们先来看看UNIX系统上一些入侵检测方法,以LINUX和solaris为例...

    小小科
  • 【DB笔试面试620】在Oracle中,举例说明“集合操作关联转变(Set Join Conversion)”查询转换。

    在Oracle中,举例说明“集合操作关联转变(Set Join Conversion)”查询转换。

    小麦苗DBA宝典
  • 微信公众号开发之扫码支付

    上一篇文章介绍了微信提供的那些支付方式以及公众号支付http://www.jianshu.com/p/cb2456a2d7a7

    Javen
  • Excel与Power BI的互通

    而反过来,对于很多还不是很熟悉Power BI的小伙伴来说,也可以将PBI制作的模型和文件很方便的导回到Excel中,进行分析和展示。

    公众号PowerBI大师

扫码关注云+社区

领取腾讯云代金券