编程技术

策略(Strategy)模式

策略模式的用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。策略模式相当于"可插入式(Pluggable)的算法。一,结构:环境(Context)角色:持有一个Strategy类的引用。抽象策略(Strategy)角色:这是一个抽象角色,通常由一个接口或抽象类实现。此角色给出所有的具体策略类所需的接口。具体策略(ConcreteStrategy)角色:包装了相关的

系统 2019-08-12 09:29:46 2169

编程技术

从网上获取图片

效果展示输入图片地址,点击button布局EditText,button,ImageView给button加监听器实现代码:Stringpath=imagePathText.getText().toString();NetToolNTU=newNetTool();StringimagePath=NTU.getImagePath(getBaseContext(),path);imageView.setImageBitmap(BitmapFactory.dec

系统 2019-08-12 09:29:35 2169

编程技术

数据库三范式的理解(引用其他网友)

第一范式:确保每列的原子性.如果每列(或者每个属性)都是不可再分的最小数据单元(也称为最小的原子单元),则满足第一范式.例如:顾客表(姓名、编号、地址、……)其中"地址"列还可以细分为国家、省、市、区等。第二范式:在第一范式的基础上更进一层,目标是确保表中的每列都和主键相关.如果一个关系满足第一范式,并且除了主键以外的其它列,都依赖于该主键,则满足第二范式.例如:订单表(订单编号、产品编号、定购日期、价格、……),"订单编号"为主键,"产品编号"和主键列没

系统 2019-08-12 01:33:42 2169

编程技术

CRUD is bad for REST

[ForArnonRotem-Gal-Oz’sArticle:http://dobbscodetalk.com/index.php?option=com_myblog&show=CRUD-is-bad-for-REST.html&Itemid=29]Inoneofmypreviousposts(Rest:good,badandugly),Imadeapassingcomment,abouthowIthinkusingCRUDinRESTfulservice

系统 2019-08-12 01:33:39 2169

编程技术

四、 用axis2的辅助工具发布、调用WebService

这次我们编辑一个返回User对象、List、Map、User[]的形式,并且用axis2的工具完成发布WebService。不再复制class到axis2的工程目录下。下面看看服务器端WebService代码:代码packagecom.hoo.service;importjava.util.ArrayList;importjava.util.HashMap;importjava.util.List;importjava

系统 2019-08-12 01:32:30 2169

Python

python logging模块的使用总结

日志级别CRITICAL50ERROR40WARNING30INFO20DEBUG10logging.basicConfig()函数中的具体参数含义filename:指定的文件名创建FiledHandler,这样日志会被存储在指定的文件中;filemode:文件打开方式,在指定了filename时使用这个参数,默认值为“w”还可指定为“a”;format:指定handler使用的日志显示格式;datefmt:指定日期时间格式。,格式参考strftime时间

系统 2019-09-27 17:57:09 2168

Python

Python线上环境使用日志的及配置文件

目录瞎比比与print相比logging有什么优势?基础用法保存到文件多模块使用logging使用配置文件配置logging瞎比比这篇文章其实早在一个月之前就写好了。奈何,加班猛如虎,真的怕了。直至今天才幸运地有了个双休,赶紧排版一下文章发布了。以下为正文。在初学Python的时候,我们使用print("helloworld")输出了我们的第一行代码。在之后的日子里,便一直使用print进行调试(当然,还有IDE的debug模式)。但是,当你在线上运行Py

系统 2019-09-27 17:55:27 2168

Python

python word转pdf代码实例

原理使用pythonwin32库调用word底层vba,将word转成pdf安装pywin32pipinstallpywin32python代码fromwin32com.clientimportgencachefromwin32com.clientimportconstants,gencachedefcreatePdf(wordPath,pdfPath):"""word转pdf:paramwordPath:word文件路径:parampdfPath:生成p

系统 2019-09-27 17:55:09 2168

Python

python小程序(3)输入某年某月某日,计算这一天是这一年的第几天

思路先判断是闰年还是平年,再调用相应函数计算每个月多少天,然后加上前几个月的所有天数和这个月的天数importsys#输入某年某月某日,计算这一天是这一年的第几天whileTrue:year=int(input('Year:'))mon=int(input('Month:'))day=int(input('Day:'))ifyear<0ormon>12ormon<0orday>31orday<0:#判断输入数值是否超过正常范围你,若是,报错退出程序prin

系统 2019-09-27 17:55:01 2168

Python

Python自动生成代码 - 通过tkinter图形化操作并生成代码框架

Python自动生成代码-通过tkinter图形化操作并生成代码框架背景脚本代码Demo_CodeGenerator.pydisplay.pyFileHandler.py:脚本运行结果:脚本代码目录其它好玩的Python脚本背景在写代码过程中,如果有频繁重复性的编码操作,或者可以Reuse的各类代码,可以通过Python写一个脚本,自动生成这类代码,就不用每次手写、或者copy了。比如新建固定的代码框架、添加一些既定的软件逻辑,通讯协议、消息模板等等,再编

系统 2019-09-27 17:54:25 2168

Python

Python学习笔记(三

一、PyQt5安装:1、国内镜像:pipinstallPyQt5-ihttps://pypi.douban.com/simple安装完成之后还要安装PyQt5的工具包:pipinstallPyQt5-tools-ihttps://pypi.douban.com/simple2、官网的:pipinstallPyQt5pipinstallPyQt5-tools3、也可以在PyCharm中安装:4、安装完毕之后用下面的代码测试如果运行成功表示安装成功:impor

系统 2019-09-27 17:53:46 2168

Python

python3写爬取B站视频弹幕功能

需要准备的环境:一个B站账号,需要先登录,否则不能查看历史弹幕记录联网的电脑和顺手的浏览器,我用的ChromePython3环境以及request模块,安装使用命令,换源比较快:pip3installrequest-ihttp://pypi.douban.com/simple爬取步骤:登录后打开需要爬取的视频页面,打开开发者工具台,Chrome可以使用F12快捷键,选择network监听请求点击查看历史弹幕,获取请求其中rolldate后面的数字表示该视频

系统 2019-09-27 17:52:52 2168

Python

Python 命令行之旅:使用 argparse 实现 git 命令

作者:HelloGitHub-Prodesire前言在前面三篇介绍argparse的文章中,我们全面了解了argparse的能力,相信不少小伙伴们都已经摩拳擦掌,想要打造一个属于自己的命令行工具。本文将以我们日常工作中最常见的git命令为例,讲解如何使用argparse库来实现一个真正可用的命令行程序。本系列文章默认使用Python3作为解释器进行讲解。若你仍在使用Python2,请注意两者之间语法和库的使用差异哦~git常用命令大家不妨回忆一下,平时最常

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

Python

python文件及路径管理函数

glob模块说明:1、glob是python自己带的一个文件操作相关模块,用它可以查找符合自己目的的文件,就类似于Windows下的文件搜索,支持通配符操作*、?、[]这三个通配符,*代表0个或多个字符,?代表一个字符,[]匹配指定范围内的字符,如[0-9]匹配数字。glob.glob("字符串+通配符")该方法返回指定路径所有匹配的文件的列表,该方法需要一个参数用来指定匹配的路径字符串(本字符串可以为绝对路径也可以为相对路径),其返回的文件名只包括当前目

系统 2019-09-27 17:52:14 2168

Python

Python3.6 openCV3.4.3车牌自动识别

算法思想来自于网上资源,先使用图像边缘和车牌颜色定位车牌,再识别字符。车牌定位在predict方法中,为说明清楚,完成代码和测试后,加了很多注释,请参看源码。车牌字符识别也在predict方法中,请参看源码中的注释,需要说明的是,车牌字符识别使用的算法是opencv的SVM,opencv的SVM使用代码来自于opencv附带的sample,StatModel类和SVM类都是sample中的代码。SVM训练使用的训练样本来自于github上的EasyPR的c

系统 2019-09-27 17:51:17 2168