微信跳一跳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 相关文章推荐
在Django框架中设置语言偏好的教程
Jul 27 Python
Python工程师面试题 与Python基础语法相关
Jan 14 Python
Python实现XML文件解析的示例代码
Feb 05 Python
dataframe设置两个条件取值的实例
Apr 12 Python
python3实现表白神器
Apr 09 Python
python实现五子棋小程序
Jun 18 Python
python and or用法详解
Jun 26 Python
python函数的万能参数传参详解
Jul 26 Python
django基础学习之send_mail功能
Aug 07 Python
Python selenium的基本使用方法分析
Dec 21 Python
python实现ssh及sftp功能(实例代码)
Mar 16 Python
Django+Nginx+uWSGI 定时任务的实现方法
Jan 22 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
PHP 编程请选择正确的文本编辑软件
2006/12/21 PHP
PHP实时显示输出
2008/10/02 PHP
php实现查询百度google收录情况(示例代码)
2013/08/02 PHP
php解析url的三个示例
2014/01/20 PHP
使用php清除bom示例
2014/03/03 PHP
php获取指定日期之间的各个周和月的起止时间
2014/11/24 PHP
PHP编写文件多服务器同步程序
2016/07/02 PHP
PHP超级全局变量【$GLOBALS,$_SERVER,$_REQUEST等】用法实例分析
2019/12/11 PHP
javascript显式类型转换实例分析
2015/04/25 Javascript
javascript常用函数(1)
2015/11/04 Javascript
BootStrap智能表单实战系列(七)验证的支持
2016/06/13 Javascript
ES7中利用Await减少回调嵌套的方法详解
2017/11/01 Javascript
从零开始学习搭建React脚手架项目
2018/08/23 Javascript
vuejs 动态添加input框的实例讲解
2018/08/24 Javascript
vue中设置、获取、删除cookie的方法
2018/09/21 Javascript
纯JS实现五子棋游戏
2020/05/28 Javascript
Vue实现导航栏菜单
2020/08/19 Javascript
Django中实现点击图片链接强制直接下载的方法
2015/05/14 Python
Python实现二分查找算法实例
2015/05/26 Python
python中比较两个列表的实例方法
2019/07/04 Python
Python代码实现http/https代理服务器的脚本
2019/08/12 Python
Pytorch高阶OP操作where,gather原理
2020/04/30 Python
python使用hdfs3模块对hdfs进行操作详解
2020/06/06 Python
支持IE8的纯css3开发的响应式设计动画菜单教程
2014/11/05 HTML / CSS
详解淘宝H5 sign加密算法
2020/08/25 HTML / CSS
Nº21官方在线商店:numeroventuno.com
2019/09/26 全球购物
外国人聘用意向书
2014/04/01 职场文书
学校安全责任书范本
2014/07/23 职场文书
工程部经理岗位职责
2015/02/02 职场文书
求职简历自我评价范文
2015/03/10 职场文书
2015年七一建党节活动总结
2015/03/20 职场文书
2015年国庆节活动总结
2015/03/23 职场文书
公司催款律师函
2015/05/27 职场文书
2016年“六一儿童节”校园广播稿
2015/12/17 职场文书
导游词之长城八达岭
2019/09/24 职场文书
Python turtle编写简单的球类小游戏
2022/03/31 Python