第五次重构我们引入了数据库的设计,用户信息要从数据库中读取,问候语库存储在数据库中,并支持添加与更新。数据库的引入使自动化测试变得困难了,因为数据状态总是变化着的,而这种变化使得测试过程不能复现,这是我们不愿看到的。因此,我们在设计时将业务与数据库访问分离,形成了UserDao与GreetingRuleDao。此时,我们的设计应当遵从“依赖反转”原则,即将UserDao与GreetingRuleDao设计成接口,并编写它们的实现UserDaoImpl与Gr
系统 2019-08-29 21:59:03 1832
平台搭建好了,现在做一个简单的例子在一个文本框里输入字符后点复制后在另一个文本框里显示。如图:代码:
系统 2019-08-12 09:29:33 1832
书籍下载https://download.csdn.net/download/qfire/11175748采用MNIST数据集进行卷积神经网络实战学习,面向对象设计方法,把每个独立模块封装成对象。训练一个卷积网络,主要包括7部分:激活函数、正则化、优化方法、卷积网络基本模块、训练方法、网络结构和数据集。每个部分都可以抽象成一个类,其中激活函数、正则化、优化方法、卷积网络基本模块和训练方法这5个类基本固定,可以适用于各种网络结构,并且前4个类都设计为接口类,
系统 2019-09-27 17:56:43 1831
OS模块的常见用法os.remove()删除文件os.rename()重命名文件os.walk()生成目录树下的所有文件名os.chdir()改变目录os.mkdir/mkdirs创建目录/多层目录os.rmdir/removedirs删除目录/多层目录os.listdir()列出指定目录的文件os.getcwd()取得当前工作目录os.chmod()改变目录权限os.path.basename()去掉目录路径,返回文件名os.path.dirname()
系统 2019-09-27 17:56:42 1831
filter被称为高阶函数是有道理的。filter(self,/,*args,**kwargs)Docstring:filter(functionorNone,iterable)-->filterobjectReturnaniteratoryieldingthoseitemsofiterableforwhichfunction(item)istrue.IffunctionisNone,returntheitemsthataretrue.从Doc的简单描述可
系统 2019-09-27 17:56:08 1831
一:背景CentOS7里内置了一些应用,比如python2。现在需要在系统中安装python3。二:实验环境CentOS7系统中一个普通用户(root也无所谓,如果你愿意的话三:实验步骤准备工作(1)更新yum源。yum是基于RedHat的Linux系统中常用的包管理工具,可以使用yum安装、更新、移除软件安装包。使用sudoyum-yupdate,-y的主要作用就是省略确认步骤,详情见manyum。(2)安装yum-utils。yum-utils是拓展y
系统 2019-09-27 17:56:06 1831
每一幅图像都包含某种程度的噪声,噪声可以理解为由一种或者多种原因造成的灰度值的随机变化,如由光子通量的随机性造成的噪声等,在大多数情况下,通过平滑技术(也常称为滤波技术)进行移植或者去除,其中具备保持边缘作用的平滑技术得到了更多的关注。常用的平滑处理算法包括基于二维离散卷积的高斯平滑、均值平滑,基于统计学方法的中值平滑,具备保持边缘作用的平滑算法的双边滤波。1.卷积定义及矩阵形式(1)full卷积(2)valid卷积(3)same卷积(4)Python实现
系统 2019-09-27 17:55:48 1831
Python生成器是什么?先说一下生成器函数,抽象地说,生成器函数就是一个顺序执行过程的抽象。具体地说,它就是一种特殊的函数,这种特殊性源于这个函数中出现了一个yield关键字。解释器在发现函数中有yield关键字时,将这个函数标记为一个生成器函数,其执行的结果会返回一个生成器,而这个生成器是支持迭代器协议的。创建一个生成器函数生成器函数的创建是非常简单的:In[1]:defmygenerator():...:yield1...:正如前面提到的,如果一个函
系统 2019-09-27 17:55:34 1831
三种方法:①直接使用dict②使用defaultdict③使用Counterps:`int()`函数默认返回0①dicttext="I'mahandsomeboy!"frequency={}forwordintext.split():ifwordnotinfrequency:frequency[word]=1else:frequency[word]+=1②defaultdictimportcollectionsfrequency=collections.d
系统 2019-09-27 17:54:44 1831
本文实例讲述了python获取文件后缀名及批量更新目录下文件后缀名的方法。分享给大家供大家参考。具体实现方法如下:1.获取文件后缀名:复制代码代码如下:#!/usr/bin/pythonimportosdict={}ford,fd,flinos.walk('/home/ahda/Program/'):forfinfl:sufix=os.path.splitext(f)[1][1:]ifdict.has_key(sufix):dict[sufix]+=1el
系统 2019-09-27 17:54:31 1831