Python

Python实现LRU算法的2种方法

LRU:leastrecentlyused,最近最少使用算法。它的使用场景是:在有限的空间中存储对象时,当空间满时,会按一定的原则删除原有的对象,常用的原则(算法)有LRU,FIFO,LFU等。在计算机的Cache硬件,以及主存到虚拟内存的页面置换,还有Redis缓存系统中都用到了该算法。我在一次面试和一个笔试时,也遇到过这个问题。LRU的算法是比较简单的,当对key进行访问时(一般有查询,更新,增加,在get()和set()两个方法中实现即可)时,将该k

系统 2019-09-27 17:45:30 2473

Java

Java中的异常处理

如何捕获异常Java中使用关键字try、catch和finally来捕获和处理异常。try{//normalworkflow}catch(Exceptione){//handleexception}finally{//docleanup}每一段的基本职责不同:try{}中的代码是程序正常执行时的逻辑,也是可能抛出异常的代码段。catch{}中是用来处理Exception的代码,可以有多个catch,但Java编译器强制要求多个catch捕获的Excepti

系统 2019-08-29 23:45:25 2473

Java

JavaEye 可视化编辑器下的图片编辑后的问题

也许是个Bug吧,在这里我简单说一下发现的过程。现在我上传一个图片:test.png然后将图片插入编辑器:由于太大了,我需要利用编辑器上的“插入/编辑图片”来修改尺寸。点击更新。(其实这个地方无所谓点什么)然后直接点击“提交”或者“存为草稿”,没有反应了。最后我退出来并重新进入发现:并不是前台没有给响应,而是根本没有提交成功。如何从这种状态挣脱出来呢?点击到文章的末尾输入一些字符,就恢复正常了。也就是说如果在编辑完图片后不能直接提交,而是要将编辑器状态(这

系统 2019-08-29 22:17:12 2473

编程技术

利用CORS实现跨域请求

跨域请求一直是网页编程中的一个难题,在过去,绝大多数人都倾向于使用JSONP来解决这一问题。不过现在,我们可以考虑一下W3C中一项新的特性——CORS(Cross-OriginResourceSharing)了。本文的所有代码均来自http://www.html5rocks.com/en/tutorials/cors/,如果您对其中的任何技术细节存在疑问,请以原文为准。客户端创建XmlHttpRequest对象对于CORS,Chrome、FireFox以及

系统 2019-08-12 09:30:32 2473

编程技术

JBPM节点分支之Group节点分析

JBPM节点分支之Group节点分析JBPM的众多节点类型中,唯独Group节点比较有个性;Group节点作为众多的节点中的一员,其并不能完成业务功能,但其作为一种节点的容器,可以对现有的节点类型进行“混搭”,从而构造出可以完成新的业务功能的节点类型!今天我们来简单的学习一下Group节点,后续我们会进行深入分析JBPM的并发设计时候再次提到Group节点。Group节点功能分析作为父容器,可以将复杂的业务功能进行封装为新的节点类型,便于业务复用和维护;可

系统 2019-08-12 09:30:26 2473

编程技术

TransactionProxyFactoryBean

Spring容器中有两种思想很重要,也就是我们常用的Ioc和Aop,如果理解了这两种思想,对于我们学习设计模式和编程有很大的帮助,美国四人帮(GOF)写的设计模式中,有很多都用到了Ioc的思想。简单的说就是依赖注入的思想。常见的一种情况:如果一个类中要复用另外一个类中的功能时,我们可能会首先想到继承,如果你知道Ioc这种思想的话,我想你不会用继承,你会马上想到把要用到功能抽取出来,在我们要用到的类中只需通过set方法简单的注入就可以了,其实这里用到了对象的

系统 2019-08-12 09:30:25 2473

编程技术

GitHub上项目配置和导入eclispe的问题解决

在github上下载的工程文件导入的时候总是遇到各种各样的问题,昨天晚上瞎忙一晚上查资料没搞定。早上找高手请教了一下,一起弄了好一会终于解决了,这里记录一下方法解决的具体方法步骤。本方法适用于离线导入github工程,没有使用maven和egit工具。测试项目以github上的一个下拉刷新的listview为例。项目地址:https://github.com/erikwt/PullToRefresh-ListView第一步:下载项目的zip压缩包解压到你的

系统 2019-08-12 01:33:25 2473

Python

12个Python程序员面试必备问题与答案(小结)

1.什么是pickling和unpickling?Pickle模块读入任何Python对象,将它们转换成字符串,然后使用dump函数将其转储到一个文件中――这个过程叫做pickling。反之从存储的字符串文件中提取原始Python对象的过程,叫做unpickling。2.什么是Python的命名空间?在Python中,所有的名字都存在于一个空间中,它们在该空间中存在和被操作――这就是命名空间。它就好像一个盒子,每一个变量名字都对应装着一个对象。当查询变量的

系统 2019-09-27 17:57:19 2472

Python

Python一秒搭建ftp服务器,帮助你在局域网共享文件

“老板来碗面”“要啥面?”“内牛满面..”最近项目上的事情弄得人心累,本来是帮着兄弟项目写套入口代码,搞着搞着就被拉着入坑了。搞开发的都知道,最怕弄这种项目portal的东西,你调用一堆东西,结果各种调用报错都反馈到你这里,导致的结果就是除了啥问题都找你。最形象的比喻就是,眼前一栋楼,你是看门的。电梯坏了找你、住户被盗了找你、连谁家下水不通了也找你,各种无厘头的破事儿,我就想送出一张图…共享文件熟悉Python的朋友们都知道,python自带了一个Simp

系统 2019-09-27 17:56:32 2472

Python

python批量生成excel测试数据

没啥说的,直接上代码。。。#!/usr/bin/envpython3#-*-coding:utf-8-*-importxlwtimporttimeimportrandombook=xlwt.Workbook(encoding='utf-8')sheet=book.add_sheet('sheet1',cell_overwrite_ok=True)row_col_list=[9,10]defset_title():title_kwgs={"colnum1":

系统 2019-09-27 17:54:59 2472

Python

Python学习笔记003——Python基础知识(2)

变量的基本使用1.变量定义在Python中,每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建等号(=)用来给变量赋值=左边是一个变量名=右边是存储在变量中的值变量定义之后,后续就可以直接使用了2.变量的类型在内存中创建一个变量,会包括:变量的名称变量保存的数据变量存储数据的类型变量的地址(标示)2.1变量的类型在Python中定义变量是不需要指定类型(在其他很多高级语言中都需要)数据类型可以分为数字型和非数字型数字型整型(int)浮点型(float

系统 2019-09-27 17:53:14 2472

Python

Python列表append和+的区别浅析

在python中使用列表的时候大家经常会需要向一个列表中添加一个元素,像下面这两种使用方法需要注意:复制代码代码如下:t=[1,2,3]t1=t.append([4])t2=t+[4]以上两种使用方式是有区别的,我们来看看实际运行的效果:复制代码代码如下:>>>t=[1,2,3]>>>t1=t.append([4])>>>t[1,2,3,[4]]>>>t1>>>>>>t2=t+[4]>>>t2[1,2,3,[4],4]>>>t[1,2,3,[4]]可以看到

系统 2019-09-27 17:52:37 2472

Python

python爬虫

python爬虫1《1》什么是爬虫网络爬虫?网络爬虫(又被称为网页蜘蛛,网络机器人),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。《2》爬虫的基本原理:我们把互联网比喻为一张大网,网络爬虫我们想象为网上的蜘蛛,网页与网页之间的连接我们理解为节点,爬虫就相当于是访问网页,获取网页的信息,又通过节点可以爬取另一个网站,然后不停的通过一个个节点即访问一个个网页,这样网站的数据就可以被我们获取下来了。《3》爬虫的分类:网络爬虫可分为通用爬虫和聚焦爬虫

系统 2019-09-27 17:50:05 2472

Python

15.3Sum(python)

1.Description:Givenanarraynumsofnintegers,arethereelementsa,b,cinnumssuchthata+b+c=0?Findalluniquetripletsinthearraywhichgivesthesumofzero.Note:Thesolutionsetmustnotcontainduplicatetriplets.Example:Givenarraynums=[-1,0,1,2,-1,-4],

系统 2019-09-27 17:47:13 2472

Python

在Python中操作列表之list.extend()方法的使用

extend()方法追加序列内容到列表。语法以下是extend()方法的语法:list.extend(seq)参数seq--这是列表的元素返回值此方法不返回任何值,但添加内容到现有列表中例子下面的例子显示了extend()方法的使用#!/usr/bin/pythonaList=[123,'xyz','zara','abc',123];bList=[2009,'manni'];aList.extend(bList)print"ExtendedList:",a

系统 2019-09-27 17:47:02 2472