搜索到与相关的文章
编程技术

1.1、 策略模式

三个角色:环境(Context)角色:持有一个Strategy类的引用。抽象策略(Strategy)角色:通常由一个接口或者抽象类实现,此角色给出所有的具体策略类所需的接口。具体策略(ConcreteStrategy)角色:包装相关算法和行为为了帮助理解,我们举例来说明。我们的程序要实现加密功能。加密有一个加密算法,加密算法有很多种,比如MD5,DES等,我们的程序需要实现这个功能,就是可以让用户选择不同的加密算法进行加密。这个过程我们可以用Strateg

系统 2019-08-29 23:23:58 2137

编程技术

heapsort

#includeusingnamespacestd;voidDownAdjust(int*a,intfirst,intlast)...{inttmp,down;tmp=a[first];for(down=first*2+1;down<=last;down=down*2+1)...{//if(downa[down+1])++down;//if(a[down]

系统 2019-08-29 22:38:51 2137

编程技术

第二章 身份验证——《跟我学Shiro》

目录贴:跟我学Shiro目录贴身份验证,即在应用中谁能证明他就是他本人。一般提供如他们的身份ID一些标识信息来表明他就是他本人,如提供身份证,用户名/密码来证明。在shiro中,用户需要提供principals(身份)和credentials(证明)给shiro,从而应用能验证用户身份:principals:身份,即主体的标识属性,可以是任何东西,如用户名、邮箱等,唯一即可。一个主体可以有多个principals,但只有一个Primaryprincipal

系统 2019-08-29 22:00:47 2137

编程技术

第二十二章 集成验证码——《跟我学Shiro》

目录贴:跟我学Shiro目录贴在做用户登录功能时,很多时候都需要验证码支持,验证码的目的是为了防止机器人模拟真实用户登录而恶意访问,如暴力破解用户密码/恶意评论等。目前也有一些验证码比较简单,通过一些OCR工具就可以解析出来;另外还有一些验证码比较复杂(一般通过如扭曲、加线条/噪点等干扰)防止OCR工具识别;但是在中国就是人多,机器干不了的可以交给人来完成,所以在中国就有很多打码平台,人工识别验证码;因此即使比较复杂的如填字、算数等类型的验证码还是能识别的

系统 2019-08-29 22:00:40 2137

Python

【python】找第n个默尼森数

P是素数且M也是素数,并且满足等式M=2^P-1,则称M为默尼森数。例如,P=5,M=2^P-1=31,5和31都是素数,因此31是默尼森数。frommathimportsqrtdefprime(num):ifnum==1:returnFalse;ifnum==2:returnTrue;k=int(sqrt(num))+1foriinrange(2,k):ifnum%i==0:returnFalse;returnTrue;defmonisen(no):k=

系统 2019-09-27 17:57:15 2136

Python

深入了解Python iter() 方法的用法

今天我们来介绍下Python基础教程学习之iter()方法另外的用法。据说很少有人知道这个用法!一、上代码、学用法我们都比较熟悉iter(obj),会返现一个迭代器,如果obj不是可迭代对象,则会报错。但其实如果仔细看官方文档,会发现iter()方法其实是接受两个参数的,文档说明如下iter(object[,sentinel])sentinel英文翻译为哨兵。sentinel参数是可选的,当它存在时,object不再传入一个可迭代对象,而是一个可调用对象,

系统 2019-09-27 17:54:30 2136

Python

python编写暴力破解FTP密码小工具

python具体强大的库文件,很多功能都有相应的库文件,所以很有必要进行学习一下,其中有一个ftp相应的库文件ftplib,我们只需要其中的登录功能,然后利用多线程调用相应字典里面的字段进行登录,还能根据自己的需要,根据自身的情况编写需要的程序,让程序代替我们去做一些枯燥的重复工作。下面直接上代码,下面是主文件复制代码代码如下:importosimporttimeimportthreadingclassmythread(threading.Thread):

系统 2019-09-27 17:54:23 2136

Python

Python实现Mysql数据统计及numpy统计函数

Python实现Mysql数据统计的实例代码如下所示:importpymysqlimportxlwtexcel=xlwt.Workbook(encoding='utf-8')sheet=excel.add_sheet('Mysql数据库')sheet.write(0,0,'库名')sheet.write(0,1,'表名')sheet.write(0,2,'数据条数')db=pymysql.connect('192.168.1.74','root','123

系统 2019-09-27 17:51:52 2136

Python

使用python serial 获取所有的串口名称的实例

如下所示:#!/usr/bin/envpython#-*-coding:utf-8-*importserialimportserial.tools.list_portsport_list=list(serial.tools.list_ports.comports())iflen(port_list)<=0:print"TheSerialportcan'tfind!"else:port_list_0=list(port_list[0])port_serial

系统 2019-09-27 17:50:57 2136

Python

使用python实现滑动验证码功能

首先安装一个需要用到的模块pipinstallsocial-auth-app-django安装完后在终端输入piplist会看到social-auth-app-django3.1.0social-auth-core3.0.0然后可以来我的github,下载关于滑动验证码的这个demo:https://github.com/Edward66/slide_auth_code下载完后启动项目pythonmanage.pyrunserver启动这个项目后,在主页就

系统 2019-09-27 17:50:45 2136