微信跳一跳python自动代码解读1.0


Posted in Python onJanuary 12, 2018

微信跳一跳自动代码,具体内容如下

那个跳一跳python“外挂”,有几个python文件,其中有一个是得到截图,然后鼠标在图片上点击两次,python窗口上会打印两次鼠标的位置,并且会跟上一行这两个点之间的距离。

微信跳一跳python自动代码解读1.0

这个功能我先给除去获取截屏,就说怎么在某张图片上算出两次点击的距离。

首先,需要用到图形模块,PIL:

from PIL import Image
img = Image.open('0.jpg')

然后用图形绘制模块matplotlib来给出一个plot对象:

import matplotlib.pyplot as plt
fig = plt.figure()

给这个对象加上刚刚打开图片的标签:

plt.imshow(img, animated = True)

然后用matplotlib的canvas.mpl_connect函数,将我们点击的动作和图片连接起来,这个函数的第二个参数要我们自己的写。

fig.canvas.mpl_connect('button_press_event', on_press)

在这个自定义的on_press函数,我们要实现得到两个点以后再算出距离。
那么我们就要有变量来储存两个点,临时储存点,来计算点击了多少次,横纵坐标
分别用全局变量cor=[0,0],coords=[], click_count=0,ix,iy

global ix,iy
 global click_count
 global cor

 ix,iy = event.xdata, event.ydata
 coords = []
 coords.append((ix,iy))
 print("now = ", coords)
 cor.append(coords)
 click_count += 1

先把点储存在临时的coords里面,打印出当前位置,然后将临时的放入全局变量cor里面, 并且点击次数+1.

if click_count > 1:
  click_count = 0

  cor1 = cor.pop()
  cor2 = cor.pop()

  distance = (cor1[0][0] - cor2[0][0]) **2 + (cor1[0][1] - cor2[0][1]) **2
  distance = distance ** 0.5
  print("distance = ", distance)

当点击次数大于1的时候,就说明已经储存了两个点了。
这里用的栈pop()方法得到两个点,分别放入cor1 和 cor2, 那么cor1 和 cor2 就是两个点了。
接着计算出距离distance就行了。

完整代码:

import numpy as np
from matplotlib.animation import FuncAnimation
import matplotlib.pyplot as plt
from PIL import Image
def on_press(event):
 global ix,iy
 global click_count
 global cor

 ix,iy = event.xdata, event.ydata
 coords = []
 coords.append((ix,iy))
 print("now = ", coords)
 cor.append(coords)

 click_count += 1
 if click_count > 1:
  click_count = 0

  cor1 = cor.pop()
  cor2 = cor.pop()

  distance = (cor1[0][0] - cor2[0][0]) **2 + (cor1[0][1] - cor2[0][1]) **2
  distance = distance ** 0.5
  print("distance = ", distance)

cor = [0,0]
click_count = 0
fig = plt.figure()
img = Image.open('0.jpg')
#updata = True

plt.imshow(img, animated= True)

fig.canvas.mpl_connect('button_press_event', on_press)
plt.show()

最终效果:

微信跳一跳python自动代码解读1.0

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

Python 相关文章推荐
Python性能优化的20条建议
Oct 25 Python
go语言计算两个时间的时间差方法
Mar 13 Python
Python中条件判断语句的简单使用方法
Aug 21 Python
Python实现基于KNN算法的笔迹识别功能详解
Jul 09 Python
使用tensorflow实现线性回归
Sep 08 Python
Django 反向生成url实例详解
Jul 30 Python
Python input函数使用实例解析
Nov 22 Python
tornado+celery的简单使用详解
Dec 21 Python
Python pandas库中的isnull()详解
Dec 26 Python
使用Django xadmin 实现修改时间选择器为不可输入状态
Mar 30 Python
python requests.get带header
May 05 Python
Python 调用C++封装的进一步探索交流
Mar 04 Python
Tornado 多进程实现分析详解
Jan 12 #Python
快速了解Python相对导入
Jan 12 #Python
Python实现翻转数组功能示例
Jan 12 #Python
Python实现求数列和的方法示例
Jan 12 #Python
python+matplotlib演示电偶极子实例代码
Jan 12 #Python
Python实现读取及写入csv文件的方法示例
Jan 12 #Python
python+matplotlib绘制旋转椭圆实例代码
Jan 12 #Python
You might like
2020年4月放送!《Princess Connect Re:Dive》制作组 & 角色声优公开!
2020/03/06 日漫
通过文字传递创建的图形按钮
2006/10/09 PHP
php公用函数列表[正则]
2007/02/22 PHP
PHP使用CURL获取302跳转后的地址实例
2014/05/04 PHP
php进行支付宝开发中return_url和notify_url的区别分析
2014/12/22 PHP
PHP静态成员变量
2017/02/14 PHP
PHP 数组黑名单/白名单实例代码详解
2019/06/04 PHP
Yii框架常见缓存应用实例小结
2019/09/09 PHP
JavaScript高级程序设计(第3版)学习笔记8 js函数(中)
2012/10/11 Javascript
微信内置浏览器私有接口WeixinJSBridge介绍
2015/05/25 Javascript
jQuery与Ajax以及序列化
2016/02/01 Javascript
总结JavaScript设计模式编程中的享元模式使用
2016/05/21 Javascript
Ubuntu 16.04 64位中搭建Node.js开发环境教程
2016/10/19 Javascript
Bootstrap导航简单实现代码
2017/03/06 Javascript
vue router下的html5 history在iis服务器上的设置方法
2017/10/18 Javascript
nodejs 使用 js 模块的方法实例详解
2018/12/04 NodeJs
基于vue、react实现倒计时效果
2019/08/26 Javascript
vuex(vue状态管理)的特殊应用案例分享
2020/03/03 Javascript
用Python的Tornado框架结合memcached页面改善博客性能
2015/04/24 Python
分享Python开发中要注意的十个小贴士
2016/08/30 Python
Python如何实现守护进程的方法示例
2017/02/08 Python
python技能之数据导出excel的实例代码
2017/08/11 Python
Linux(Redhat)安装python3.6虚拟环境(推荐)
2018/05/05 Python
使用python批量修改文件名的方法(视频合并时)
2020/03/24 Python
python实现图像拼接
2020/03/05 Python
简述 Python 的类和对象
2020/08/21 Python
Python2与Python3关于字符串编码处理的差别总结
2020/09/07 Python
全球速卖通巴西站点:Aliexpress巴西
2016/08/24 全球购物
环保倡议书格式范文
2014/05/14 职场文书
授权委托书公证
2014/09/14 职场文书
内勤岗位职责
2015/02/10 职场文书
五一劳动节慰问信
2015/02/14 职场文书
公司文体活动总结
2015/05/07 职场文书
董事长年会致辞
2015/07/29 职场文书
python处理json数据文件
2022/04/11 Python
使用Python获取字典键对应值的方法
2022/04/26 Python