微信跳一跳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实现一个简单的能够上传下载的HTTP服务器
May 05 Python
pygame实现弹力球及其变速效果
Jul 03 Python
Python绘制七段数码管实例代码
Dec 20 Python
基于python requests库中的代理实例讲解
May 07 Python
Python使用add_subplot与subplot画子图操作示例
Jun 01 Python
Django 实现购物车功能的示例代码
Oct 08 Python
python 监听salt job状态,并任务数据推送到redis中的方法
Jan 14 Python
python找出一个列表中相同元素的多个索引实例
Jun 11 Python
python Plotly绘图工具的简单使用
Mar 03 Python
Tensorflow中k.gradients()和tf.stop_gradient()用法说明
Jun 10 Python
scrapy处理python爬虫调度详解
Nov 23 Python
解决TensorFlow训练模型及保存数量限制的问题
Mar 03 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
Phpbean路由转发的php代码
2008/01/10 PHP
thinkphp判断访客为手机端或PC端的方法
2014/11/24 PHP
PHP实现HTML页面静态化的方法
2015/11/04 PHP
Laravel框架Eloquent ORM删除数据操作示例
2019/12/03 PHP
javascript URL编码和解码使用说明
2010/04/12 Javascript
基于jquery的点击链接插入链接内容的代码
2012/07/31 Javascript
jQuery移动和复制dom节点实用DOM操作案例
2012/12/17 Javascript
js加入收藏夹代码(兼容ie/ff/op)
2014/05/16 Javascript
教你如何使用node.js制作代理服务器
2014/11/26 Javascript
JavaScript动态改变div属性的实现方法
2015/07/22 Javascript
javascript中caller和callee详解
2015/08/10 Javascript
基于JavaScript实现智能右键菜单
2016/03/02 Javascript
jQuery实现根据滚动条位置加载相应内容功能
2016/07/18 Javascript
javascript实现瀑布流动态加载图片原理
2016/08/12 Javascript
js实现目录链接,内容跟着目录滚动显示的简单实例
2016/10/15 Javascript
使用UrlConnection实现后台模拟http请求的简单实例
2017/01/04 Javascript
vue-scroller记录滚动位置的示例代码
2018/01/17 Javascript
Vue.js 十五分钟入门图文教程
2018/09/12 Javascript
使用form-create动态生成vue自定义组件和嵌套表单组件
2019/01/18 Javascript
微信小程序开发之点击按钮退出小程序的实现方法
2019/04/26 Javascript
在vue-cli中引入lodash.js并使用详解
2019/11/13 Javascript
Python中文件操作简明介绍
2015/04/13 Python
Python通过matplotlib画双层饼图及环形图简单示例
2017/12/15 Python
python实现简易通讯录修改版
2018/03/13 Python
python使用多进程的实例详解
2018/09/19 Python
python 实现识别图片上的数字
2019/07/30 Python
Django中使用MySQL5.5的教程
2019/12/18 Python
Matplotlib animation模块实现动态图
2021/02/25 Python
canvas探照灯效果的示例代码
2018/11/30 HTML / CSS
美国著名的家居用品购物网站:Bed Bath & Beyond
2018/01/05 全球购物
优秀党员转正的自我评价
2013/10/06 职场文书
优秀毕业生自荐信范文
2014/01/01 职场文书
麦当劳辞职信范文
2014/01/18 职场文书
2015年工程部工作总结
2015/04/30 职场文书
SpringBoot接入钉钉自定义机器人预警通知
2022/07/15 Java/Android
Python sklearn分类决策树方法详解
2022/09/23 Python