一.问题的提出我常常在思考一个问题,我们如何能设计出高水平、高质量的软件出来。怎样是高水平、高质量的软件?它应当是易于维护、易于适应变更、可重用性好的一个系统。如何做到这一点呢?答案当然是“低耦合、高内聚”了。低耦合就是软件在构造的时候,各个模块、各个功能、各个类都不会过度依赖于它周围的环境。只有这样,才能使我们的模块(功能、类)在周围发生变更时不受影响,做到易于维护和易于适应变更。正因为如此,也使它更易于重用到其它功能类似的环境中,提高了重用性。高内聚则
系统 2019-08-29 21:59:02 2002
本文是本人毕业时发表的论文.原文地址:http://www.ahcit.com/lanmuyd.asp?id=1972摘要文章提出一种集混沌加密技术,小波变换,扩频技术为一体的彩色图像水印算法。该算法先将水印信息通过混沌序列加密,再进行扩频调制弱化水印信息,然后在彩色载体图像绿色分量上进行小波变换,利用人类视觉模型(HVS)特性,在低频系数上嵌入处理后的水印信息。实验结果和攻击测试表明,该算法具有很好的鲁棒性以及安全性。关键词扩频;鲁棒性;盲水印;混沌序列
系统 2019-08-29 21:57:46 2002
在爬虫前,需要知道这两个知识点!!!字符串转字节类型str-->bytesencode()字节类型转字符串bytes-->strdecode()1.以一个简单的例子讲解urllib.request方法read读取相应内容,内容geturl获取请求的urlgetheaders获取头部信息getcode获取状态码readlines按行读取,返回列表,都是字节类型1.1获取百度的网页代码importurllib.requesturl="https://www.b
系统 2019-09-27 17:57:13 2001
Python中的最大整数Python中可以通过sys模块来得到int的最大值.python2中使用的方法是importsysmax=sys.maxintprint(max)python3中使用的方法是:importsysmax=sys.maxsizeprint(max)Python中获得最大浮点数方法一:使用sys模块>>>importsys>>>sys.float_infosys.floatinfo(max=1.7976931348623157e+308
系统 2019-09-27 17:56:59 2001
最近有个需求就是页面上执行shell命令,第一想到的就是os.system,复制代码代码如下:os.system('cat/proc/cpuinfo')但是发现页面上打印的命令执行结果0或者1,当然不满足需求了。尝试第二种方案os.popen()复制代码代码如下:output=os.popen('cat/proc/cpuinfo')printoutput.read()通过os.popen()返回的是fileread的对象,对其进行读取read()的操作可以
系统 2019-09-27 17:56:49 2001
编码0,12进制,8,16进制;ACSII是127个不到1个byte=8bit由于时间发现欧洲使用第8个bit,有256个字符,到了中国不足够。所以中国人gb2312,gbk开发。。为了python程序方便。。。不能说python,世界和平,规定了unicode(在内存运营)unicode不人性化,什么都要占2个byte16个bit,然后utf-8出现了机会。。。。中文3个byte,英文1个byte..#####################"aaa".
系统 2019-09-27 17:56:48 2001
python常见的报错提示转发自昵称:aiaiduo来源:https://www.cnblogs.com/aiaiduo/p/7966626.html在运行或编写一个程序时常会遇到错误异常,这时python会给你一个错误提示类名,告诉出现了什么样的问题(Python是面向对象语言,所以程序抛出的异常也是类)。能很好的理解这些错误提示类名所代表的意思,可以帮助你在最快的时间内找到问题所在,从而解决程序上的问题是非常有帮助的。搜集了一些python最重要的内建
系统 2019-09-27 17:56:41 2001
python访问抓取网页常用命令简单的抓取网页:importurllib.requesturl="http://google.cn/"response=urllib.request.urlopen(url)#返回文件对象page=response.read()直接将URL保存为本地文件:importurllib.requesturl="http://google.cn/"response=urllib.request.urlopen(url)#返回文件对象
系统 2019-09-27 17:56:08 2001
1、合并列表(extend)跟元组一样,用加号(+)将两个列表加起来即可实现合并:In[1]:x=list(range(1,13,2))In[2]:x+['b','a']Out[2]:[1,3,5,7,9,11,'b','a']对于已定义的列表,可以用extend方法一次性添加多个元素:In[7]:x2=[3,6,1]In[8]:x.extend(x2)In[9]:xOut[9]:[1,3,5,7,9,11,3,6,1,3,6,1,3,6,1]需要说明的是
系统 2019-09-27 17:55:28 2001
写在前面最近每日一更,我这菜鸡都有点儿不好意思了简单介绍简单用法是:assertexpression让我们用程序来测试这个expression,如果expression相当于False,那么raise一个AssertionError出来。即逻辑上等同于:ifnotexpression:raiseAssertionError简单看看这些例子:>>>assertTrue>>>assertFalseTraceback(mostrecentcalllast):Fi
系统 2019-09-27 17:55:25 2001