当多个事件绑定了同一个命令,那么在命令内部根据不同的事件进行处理的时候,怎么确定哪个事件发生了呢,用下面的来检测,经过测试处理tab键和alt键不能识别,其他单个都能被识别。还有个事件的type属性,这个经过测试键盘事件返回字符2,鼠标返回字符2,可以根据这个再进行判断反会的是键盘事件还是鼠标事件。#:鼠标左击事件#:鼠标中击事件#:鼠标右击事件#:双击事件#:三击事件fromtkinterimport*tk=Tk()canvas=Canvas(width
系统 2019-09-27 17:50:36 1910
一、实现过程终端的字符颜色是用转义序列控制的,是文本模式下的系统显示功能,和具体的语言无关转义序列是以ESC开头,即用\033来完成(ESC的ASCII码用十进制表示是27,用八进制表示就是033)书写格式:开头部分:\033[显示方式;前景色;背景色m+结尾部分:\033[0m注意:开头部分的三个参数:显示方式,前景色,背景色是可选参数,可以只写其中的某一个;另外由于表示三个参数不同含义的数值都是唯一的没有重复的,所以三个参数的书写先后顺序没有固定要求,
系统 2019-09-27 17:50:28 1910
dict的特性dict是python中的一个可变的数据类型,用{}表示,dict的key必须是不可变的数据类型,而value的数据类型可以任意。格式:{key:value,key:value,key:value}注:键值对如果是字符串使用单引号,最后一个键值对没有逗号dict的优点①:查询速度快,可以二分查找②:key是不可以重复的注:不可变数据类型:元组,bool,int,str可以hashset可变数据类型:dict,listdict的方法1,增加的方
系统 2019-09-27 17:50:26 1910
我的Python学习之旅panzervipanzervi一个打赌必输,但却选择交易为职业的赌棍上个月,公司招了几位Python程序猿。在他们的宣传鼓舞下,我觉得,为了将来不落伍,有必要学习一下这门技能。能写爬虫,能数据分析,能写前端,还能写机器学习。这玩意这么强大!看来,我这一直是人工半量化的主,如果学会Python应该就能完全机器自动交易了。就先把这个定为一个小目标吧。遂于11月份开始准备学习。新来的小伙子很热情,推荐了两个网站学习基础知识:一个是“廖雪
系统 2019-09-27 17:50:03 1910
很多初学者会使用windows作为开发机使用,今天就来看下如何在win10和Linux下分别安装Python虚机环境。虚机环境有非常多的优点,今天我们用的虚拟环境是virtualenv。virtualenv用于创建独立的Python环境,多个Python相互独立,互不影响,它能够:1.在没有权限的情况下安装新套件2.不同应用可以使用不同的套件版本3.套件升级不影响其他应用win10下安装1.打开cmd安装虚拟环境包pipinstallvirtualenvw
系统 2019-09-27 17:49:26 1910
占位符,顾名思义就是插在输出里站位的符号。占位符是绝大部分编程语言都存在的语法,而且大部分都是相通的,它是一种非常常用的字符串格式化的方式。1、常用占位符的含义s:获取传入对象的__str__方法的返回值,并将其格式化到指定位置r:获取传入对象的__repr__方法的返回值,并将其格式化到指定位置c:整数:将数字转换成其unicode对应的值,10进制范围为0<=i<=1114111(py27则只支持0-255);字符:将字符添加到指定位置o:将整数转换成
系统 2019-09-27 17:49:18 1910
几乎所有的微薄都提供了缩短网址的服务,其原理就是将一个url地址按照一定的算法生成一段字符串,然后加在一个短域名后面边成了一个新的url地址,数据库中会存放这个短地址和原始的地址,当用户点击这个新的短地址后,短地址服务会根据短域名后面的几个字符串从数据库中读出原来的地址然后页面进行跳转。比如新浪微薄中的url是http://t.cn/xxxxxxxt.cn是其域名,其后面跟着的是7位算出来的字符串。方法一:使用哈希库自定义算法因为文本中显示太长的url会比
系统 2019-09-27 17:48:18 1910
详解Python序列化Serialize和反序列化Deserialize序列化(serialization)序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据。序列化和反序列化的目的1、以某种存储形式使自定义对象持久化;2、将对象从一个地方传递到另一个地方。3、使程序更具维护性序列化由于存在于内存中的对象都是暂时的,无法长期驻存,为了把对象的状态保持下来,这时需要把对象
系统 2019-09-27 17:48:16 1910
通用视图1.前言回想一下,在Django中view层起到的作用是相当于controller的角色,在view中实施的动作,一般是取得请求参数,再从model中得到数据,再通过数据创建模板,返回相应响应对象。但在一些比较通用的功能中,比如显示对象列表,显示某对象信息,如果反复写这么多流程的代码,也是一件浪费时间的事,在这里,Django同样给我们提供了类似的"shortcut"捷径--通用视图。2.使用通用视图使用通用视图的方法就是在urls.py这个路径配
系统 2019-09-27 17:48:15 1910
find()方法判断字符串str,如果起始索引beg和结束end索引能找到在字符串或字符串的一个子串中。语法以下是find()方法的语法:str.find(str,beg=0end=len(string))参数str--此选项指定要搜索的字符串。beg--这是开始索引,默认情况下为0。end--这是结束索引,默认情况下它等于字符串的长度。返回值如果找到此方法返回的索引,否则返回-1。例子下面的例子显示了find()方法的使用。#!/usr/bin/pyth
系统 2019-09-27 17:47:19 1910