python仿抖音表白神器


Posted in Python onApril 08, 2019

Python能够干嘛?

可以做日常任务,比如自动备份你的MP3;
可以做网站,很多著名的网站像知乎、YouTube就是Python写的;
可以做网络游戏的后台,很多在线游戏的后台都是Python开发的。

上面说的这些本人并没有实现过;

但是我知道Python可以做一些有趣的东西,比如仿制抖音表白小软件;

python仿抖音表白神器

本人也是刚刚学习Python,这个脚本通过百度找到的,然后自己也重新写了一遍,加深了映像,最主要的还是思路要清晰;

流程:

1、创建一个游戏屏幕
2、加载title
3、加载button,
4、当鼠标移动到 '算了吧' 上面的时候 重加加载桌面并随机生成一个 '算了吧' 坐标;
5、当鼠标移动到 ‘好呀'上面时 显示不同的title

以下就是Python脚本:

import pygame
import random
 
 
# 设置游戏屏幕大小 这是一个常量
WIDTH, HEIGHT = 640, 480
 
screen = pygame.display.set_mode((WIDTH, HEIGHT), 0, 32)
pygame.display.set_caption('FROM一个喜欢你很久的小哥哥')
 
# 标题
def title(text, screen, scale, color=(255, 0, 0)):
 font = pygame.font.SysFont('SimHei', WIDTH//(len(text)*2))
 textRender = font.render(text, True, color)
 
 # 获取此图片的矩形框
 # textRect = textRender.get_rect()
 # textRect.midtop = (WIDTH/scale[0], HEIGHT/scale[1])
 # screen.blit(textRender, textRect)
 
 # 初始化文字的坐标
 screen.blit(textRender, (WIDTH/scale[0], HEIGHT/scale[1]))
 
# 按钮
def button(text, x, y, w, h, color, screen):
 pygame.draw.rect(screen, color, (x, y, w, h))
 font = pygame.font.SysFont('SimHei', 20)
 textRender = font.render(text, True, (0, 0, 0))
 textRect = textRender.get_rect()
 textRect.center = ((x+w/2), (y+h/2))
 screen.blit(textRender, textRect)
 
# 生成随机的位置坐标
def get_random_pos():
 x, y = random.randint(20, 620), random.randint(20, 460)
 return x, y
 
# 点击喜欢按钮后显示的页面
def show_like_interface(text, screen, color=(255, 0, 0)):
 screen.fill((255, 255, 255))
 font = pygame.font.SysFont('SimHei', WIDTH//(len(text)))
 textRender = font.render(text, True, color)
 textRect = textRender.get_rect()
 textRect.midtop = (WIDTH/2, HEIGHT/2)
 screen.blit(textRender, textRect)
 pygame.display.update()
 while True:
  for event in pygame.event.get():
   if event.type == pygame.QUIT:
    pygame.quit()
 
def main():
 pygame.init()
 clock = pygame.time.Clock()
 unlike_pos_x = 330
 unlike_pos_y = 250
 unlike_pos_width = 80
 unlike_pos_height = 40
 unlike_color = (0, 191, 255)
 
 like_pos_x = 180
 like_pos_y = 250
 like_pos_width = 80
 like_pos_height = 40
 like_color = (0, 191, 255)
 
 running = True
 while running:
  # 填充窗口
  screen.fill((255, 255, 255))
 
  img = pygame.image.load('d:/love2.png')
  imgRect = img.get_rect()
  imgRect.midtop = int(WIDTH / 1.3), HEIGHT // 7
  screen.blit(img, imgRect)
 
  # 获取坐标
  pos = pygame.mouse.get_pos()
  if pos[0] < unlike_pos_x + unlike_pos_width + 5 and pos[0] > unlike_pos_x - 5 and pos[1] < unlike_pos_y + unlike_pos_height + 5 and pos[1] > unlike_pos_y - 5:
   while True:
    unlike_pos_x, unlike_pos_y = get_random_pos()
    if pos[0] < unlike_pos_x + unlike_pos_width + 5 and pos[
     0] > unlike_pos_x - 5 and \
     pos[1] < unlike_pos_y + unlike_pos_height + 5 and pos[
     1] > unlike_pos_y - 5:
     continue
    break
 
  title('小姐姐,我观察你很久了', screen, scale=[5, 8])
  title('做我女朋友好不好呀', screen, scale=[5, 4])
  button('好呀', like_pos_x, like_pos_y, like_pos_width, like_pos_height, like_color, screen)
  button('算了吧', unlike_pos_x, unlike_pos_y, unlike_pos_width, unlike_pos_height, unlike_color, screen)
 
  for event in pygame.event.get():
   if event.type == pygame.QUIT:
    pygame.quit()
 
  if pos[0] < like_pos_x + like_pos_width + 5 and pos[0] > like_pos_x - 5 and pos[1] < like_pos_y + like_pos_height + 5 and pos[1] > like_pos_y - 5:
   show_like_interface('我就知道小姐姐你也喜欢我~', screen, color=(255, 0, 0))
 
  pygame.display.flip()
  pygame.display.update()
  clock.tick(60)
 
 
main()

大家有好的创意也可以一起交流下;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
简单介绍Python下自己编写web框架的一些要点
Apr 29 Python
详解Python的Flask框架中生成SECRET_KEY密钥的方法
Jun 07 Python
小小聊天室Python代码实现
Aug 17 Python
打包发布Python模块的方法详解
Sep 18 Python
Mac中升级Python2.7到Python3.5步骤详解
Apr 27 Python
疯狂上涨的Python 开发者应从2.x还是3.x着手?
Nov 16 Python
搭建python django虚拟环境完整步骤详解
Jul 08 Python
python实现淘宝购物系统
Oct 25 Python
PyTorch的自适应池化Adaptive Pooling实例
Jan 03 Python
Python生成器generator原理及用法解析
Jul 20 Python
next在python中返回迭代器的实例方法
Dec 15 Python
总结Pyinstaller打包的高级用法
Jun 28 Python
Python面向对象程序设计之私有属性及私有方法示例
Apr 08 #Python
分析经典Python开发工程师面试题
Apr 08 #Python
django celery redis使用具体实践
Apr 08 #Python
python制作抖音代码舞
Apr 07 #Python
python实现抖音点赞功能
Apr 07 #Python
将pip源更换到国内镜像的详细步骤
Apr 07 #Python
python实现弹窗祝福效果
Apr 07 #Python
You might like
php 文件缓存函数
2011/10/08 PHP
浅谈PHP调用Webservice思路及源码分享
2014/06/04 PHP
详解PHP中cookie和session的区别及cookie和session用法小结
2016/06/12 PHP
php计数排序算法的实现代码(附四个实例代码)
2020/03/31 PHP
php使用goto实现自动重启swoole、reactphp、workerman服务的代码
2020/04/13 PHP
javascript整除实现代码
2010/11/23 Javascript
js获取对象为null的解决方法
2013/11/21 Javascript
javascript属性访问表达式用法分析
2015/04/25 Javascript
javascript实现自动输出文本(打字特效)
2015/08/27 Javascript
浅析JavaScript回调函数应用
2016/05/22 Javascript
JavaScipt选取文档元素的方法(推荐)
2016/08/05 Javascript
AngularJS获取json数据的方法详解
2017/05/27 Javascript
深入理解Node中的buffer模块
2017/06/03 Javascript
150行Node.js实现的dns代理工具
2019/08/02 Javascript
原生js实现弹幕效果
2020/11/29 Javascript
Python标准库内置函数complex介绍
2014/11/25 Python
Python中对列表排序实例
2015/01/04 Python
基于python中pygame模块的Linux下安装过程(详解)
2017/11/09 Python
Python程序退出方式小结
2017/12/09 Python
一篇文章读懂Python赋值与拷贝
2018/04/19 Python
Python字典创建 遍历 添加等实用基础操作技巧
2018/09/13 Python
对python3标准库httpclient的使用详解
2018/12/18 Python
Python把对应格式的csv文件转换成字典类型存储脚本的方法
2019/02/12 Python
Pyqt QImage 与 np array 转换方法
2019/06/27 Python
python判断自身是否正在运行的方法
2019/08/08 Python
Python算法中的时间复杂度问题
2019/11/19 Python
CSS3 文字动画效果
2020/11/12 HTML / CSS
巴黎一票通:The Paris Pass
2018/02/10 全球购物
sleep()方法和wait()方法的区别是什么
2012/11/17 面试题
党员干部承诺书
2014/03/25 职场文书
教师暑期培训感言
2014/08/15 职场文书
怎样写离婚协议书
2014/09/10 职场文书
2015年感恩父亲节演讲稿
2015/03/19 职场文书
2019通用版劳动合同范本!
2019/07/11 职场文书
MongoDB数据库部署环境准备及使用介绍
2022/03/21 MongoDB
MySQ InnoDB和MyISAM存储引擎介绍
2022/04/26 MySQL