python itertools模块实现排列组合

转自:https://blog.csdn.net/specter11235/article/details/71189486一、笛卡尔积:itertools.product(*iterables[,repeat])直接对自身进行笛卡尔积:importitertoolsforiinitertools.product('ABCD',repeat=2):print(''.join(i),end='')输出结果: AAABACADBABBBCBDCACBCCCDDADBDCDD print(”.join(i))这个语句可以让结果直接排列到一起 end=’‘可以让默认的输出后换行变为一个空格两个元组进行笛卡尔积:importitertoolsa=(1,2,3)b=('A','B','C')c=itertools.product(a,b)foriinc:print(i,end='')输出结果: (1,‘A’)(1,‘B’)(1,‘C’)(2,&lsqu...

python实现文章或博客的自动摘要(附java版开源项目)

python实现文章或博客的自动摘要(附java版开源项目)写博客的时候,都习惯给文章加入一个简介。现在可以自动完成了!TF-IDF与余弦相似性的应用(三):自动摘要-阮一峰的网络日志http://www.ruanyifeng.com/blog/2013/03/automatic_summarization.htmlidf.txt来自https://github.com/jannson/yaha/blob/master/yaha/analyse/idf.txtpython分词库中:https://github.com/jannson/yaha使用summarize3需要安装numpy库。GitHub-jannson/yaha:yahahttps://github.com/jannson/yaha基本功能:精确模式,将句子切成最合理的词。全模式,所有的可能词都被切成词,不消除歧义。搜索引擎模式,在精确的基础上再次驿长词进行切分,提高召回率,适合搜索引擎创建索引。备选路径,可生成最好的多条切词路径,可在此基础上根据其它信息得到更精确的分词模式。可用插件:正则表达式插件人名前缀插件地名后缀插...

PHP判断客户端是PC web端还是移动手机端方法

PHP判断客户端是PCweb端还是移动手机端方法需要实现:判断手机版的内容加上!c550x260.jpg后缀变成缩略图PHP用正则批量替换Img中src内容,用正则表达式获取图片路径实现缩略图功能的请本人看另外一篇文章:http://www.cnblogs.com/zdz8207/p/php-img-src-preg_replace.html  判断是否手机访问,火狐模拟器返回fasle,chrome模拟器返回true 判断手机发送的客户端标志,兼容性有待提高,把常见的类型放到前面火狐需要在模拟器右边的“自定义UserAgent”包含下面代码判断的关键字才行,比如:Mozilla/5.0android,或直接android/***判断是否手机访问,火狐模拟器返回fasle,chrome模拟器返回true*火狐需要在模拟器右边的“自定义UserAgent”包含下面代码判断的关键字才行,比如:Mozilla/5.0android,或直接android*@returnboolean*/functionisMobil...

php版redis插件,SSDB数据库,增强型的Redis管理api实例

php版redis插件,SSDB数据库,增强型的Redis管理api实例SSDB是一套基于LevelDB存储引擎的非关系型数据库(NOSQL),可用于取代Redis,更适合海量数据的存储。另外,rocksdb是FB在LevelDB的二次开发版本,因此也存在使用RocksDB作为存储引擎的SSDB版本,可以参考这里。SSDBPHPAPIDocumentation官方api文档http://ssdb.io/docs/php/index.htmlSSDB入门基础-中文版pdf教程http://ssdb.io/ssdb-get-started.pdfphp的redis原生插件有不少bug,建议使用ssdb的-----------------------------实战例子:require_once"SSDB.php";functiongetArticleByCode($code=''){$query=array();try{$ssdb=newSimpleSSDB(REDIS_HOST,REDIS_PORT);$key='article'.$code;//$ssdb->del($key);...

php删除多重数组对象属性,重新赋值的方法

php删除多重数组对象属性,重新赋值的方法实例:sphinx搜索出来的结果,要去掉某个属性值:$cl=newSphinxClient();$query=$cl->Query($keyword,$index);方法一,直接删除属性:foreach($query['matches']as$k=>$val){unset($query['matches'][$k]["attrs"]["content"]);unset($query['matches'][$k]["attrs"]["remarks"]);}方法二,把对应属性值设置为空或其他需要的值:foreach($query['matches']as$k=>$val){$query['matches'][$k]["attrs"]["content"]='';$query['matches'][$k]["attrs"]["remarks"]='';}PS:要操作多重数组的关键是foreach循环里用as$k=>$val取得具体元素的下标,否则无法操作。...

PHP json_decode object时报错Cannot use object of type stdClass as array

PHPjson_decodeobject时报错CannotuseobjectoftypestdClassasarrayphp再调用json_decode从字符串对象生成json对象时,如果使用[]操作符取数据,会得到下面的错误错误:CannotuseobjectoftypestdClassasarray产生原因:$res=json_decode($res);$res['key'];//把json_decode()后的对象当作数组使用。解决方法(2种):1、使用json_decode($data,true)。就是使json_decode的第二个变量设置为true。2、json_decode($res)返回的是一个对象,不可以使用$res['key']进行访问,换成$res->key就可以了。参考手册:json_decodeReturnValues:ReturnsanobjectoriftheoptionalassocparameterisTRUE,anassociativearrayisinsteadreturned....

php CodeIgniter处理多环境错误级别配置

phpCodeIgniter处理多环境错误级别配置开发者常常希望当系统运行在开发环境或生产环境中时能有不同的行为,例如,在开发环境如果程序能输出详细的错误信息将非常有用,但是在生产环境这将造成一些安全问题。ENVIRONMENT常量CodeIgniter默认使用$_SERVER['CI_ENV']的值作为ENVIRONMENT常量,如果$_SERVER['CI_ENV']的值没有设置,则设置为'development'。在index.php文件的顶部,你可以看到:define('ENVIRONMENT',isset($_SERVER['CI_ENV'])?$_SERVER['CI_ENV']:'development');$_SERVER['CI_ENV']的值可以在.htaccess文件或Apache的配置文件中使用SetEnv命令进行设置,Nginx或其他Web服务器也有类似的设置方法。或者你可以直接删掉这个逻辑,根据服务器的IP地址来设置该常量。对默认框架行为的影响CodeIgniter系统中有几个地方用到了ENVIRONMENT常量。错误报告如果将ENVIRONMENT常量设置...

bootstrap导航条在手机上默认展开二级目录,必须用setTimeout才能实现

bootstrap导航条在手机上默认展开二级目录,必须用setTimeout才能实现$(document).ready(function(){$('.dropdown').hover(function(){$('.dropdown').removeClass('open');$(this).addClass('open');});$('.dropdown-toggle').click(function(){location.href=$(this).attr('href');});$('#nav-topbar').mouseleave(function(){$('.dropdown').removeClass('open');});$('#nav-topbar-btn').click(function(){setTimeout(function(){$('.dropdown').addClass('open');},10);});}); ...

JS实现复制网页内容自动加入版权内容代码和原文链接

JS实现复制网页内容自动加入版权内容代码和原文链接实现代码:在body内放入如下代码即可:<scripttype="text/javascript">varSys={};varua=navigator.userAgent.toLowerCase();if(window.ActiveXObject){document.body.oncopy=function(){event.returnValue=false;vart=document.selection.createRange().text;vars="原文链接:"+location.href;clipboardData.setData('Text',t+''+s);};}else{functionaddLink(){varbody_element=document.getElementsByTagName('body')[0];varselection;selection=window.getSelection();varpagelink="原文链接:"+location.href;varcopytext=selecti...

bootstrap实现 手机端滑动效果,滑动到下一页,jgestures.js插件

bootstrap能否实现手机端滑动效果,滑动到下一页jgestures.js插件可以解决,只需要引入一个JS文件<scriptsrc="js/jgestures.min.js"></script>下面是JS代码:$(document).ready(function(){//手势右滑$('#myCarousel').bind('swiperightswiperightupswiperightdown',function(){//执行一些动作...})//手势左滑$('#myCarousel').bind('swipeleftswipeleftupswipeleftdown',function(){//执行一些动作...})//单点滑动手势,滑动完成后触发(一个手指在屏幕上移动)$('#myCarousel').bind('swipeone',function(){//执行一些动作...})});=====================================jGestures插件允许你如同原生的jQuery事件一样监听以下事件:'pinch'(缩放手势...

php防盗链,php ci在control里面控制除了自己站内的链接点击跳转,其他来源的都跳到站内页面

php防盗链,phpci在control里面控制除了自己站内的链接点击跳转,其他来源的都跳到站内页面$route['jump/(:any)/(:any)']="index/jump/$1/$2";文章來源:<arel="nofollow"target="_blank"href="<?=base_url().'jump/'.$code.'/'.urlencode($source)?>"><?=$sname?></a>publicfunctionjump($code,$link){//不是站内跳转的不跳转if(isset($_SERVER['HTTP_REFERER'])&&$_SERVER['HTTP_REFERER']!=''){$rfurl=$_SERVER['HTTP_REFERER'];if(strstr($rfurl,SITE_DOMIAN)){$link=utf8_urldecode($link);redirect($link);}else{redirect(SITE_BASE_URL.$code.".html"...

php原子操作,文件锁flock,数据库事务

php原子操作,文件锁flock,数据库事务php没有继承posix标准支持的unix锁,只封装了一个linux系统调用flock(信号量也能做成锁),按理也是可以使用锁机制的,虽然效率低一点。php脚本是运行在fastcgi容器中,而fastcgi是多进程的,所以如果php程序访问了临界资源,势必造成程序结果的不正确性。估计还要考虑下fastcgi容器的问题------------------------------------问题描述:黑客用的工具刷我们的后台取消订单时会有退款,黑客并发取消订单,导致多次退款如果请求一个一个来,哪怕间隔100毫秒,也是没有问题的一个PHP处理过程是:读退款标志,发现没退款,退款,然后设置已退款标志问题是多个请求同时到了,读出来的退款标志都是未退款,所以多个请求都退款了同一个php文件,被同时请求多次,是同一时刻用php文件锁flock我们试了不行,还是用C++队列用C++监听了一个端口,直接接收HTTP包,然后返回HTTP格式的包,PHP程序中用curl访问我这个C程序.相当于远程调用了,可以部署到其他服务器做分布式了===============...

默认只显示指定高度,出来按钮 阅读更多,加载全文,点击后显示全文的实现方式

默认只显示指定高度,出来按钮阅读更多,加载全文,点击后显示全文的实现方式<divid="article_content"class="mt20mb10"><?=$content?></div><divclass="clearfixmargin10"></div><div><buttonclass="btnbtn-lgshow-all"type="button">阅读更多</button></div>$('.show-all').click(function(){$("#contentID").css("maxHeight","none");$(this).parent().css("display","none");});--------------------------------------------扩展知识:jquery修改style方法:obj.css("key","value");...

高并发 php uniqid 用md5生成不重复唯一标识符方案

高并发phpuniqid用md5生成不重复唯一标识符方案uniqid()函数基于以微秒计的当前时间,生成一个唯一的ID。uniqid(prefix,more_entropy)prefix可选。为ID规定前缀。如果两个脚本恰好在相同的微秒生成ID,该参数很有用。more_entropy可选。规定位于返回值末尾的更多的熵。如果prefix参数为空,则返回的字符串有13个字符串长。如果more_entropy参数设置为true,则是23个字符串长。如果more_entropy参数设置为true,则在返回值的末尾添加额外的熵(使用组合线形同余数生成程序),这样可以结果的唯一性更好。以字符串的形式返回唯一标识符。提示和注释:由于基于系统时间,通过该函数生成的ID不是最佳的。即使使用了第二个参数,也会重复,如需生成绝对唯一的ID最好的方案是结合md5函数来生成唯一ID。-----------------------------------------1//获取唯一序列号2publicstaticfunctiongenerateNum(){3//strtoupper转换成全大写的4$charid=s...

Thinkphp用exp表达式执行mysql语句,查询某字段不为空is not null,自动增值

Thinkphp用exp表达式执行mysql语句,查询某字段不为空isnotnull,自动增值Thinkphp的文档经常不够完整的表达MYSQL的各种组合,isnotnull在thinkphp中就不能用“=”或者简单的eq等来表示。TP支持MYSQL不为空的array编写方式:$data=D('tablename');$map=array();$map['pic']=array('exp','isnotnull');其中的exp表示MYSQL的表达式查询,支持各种MYSQL语句的添加该写法同时支持在update中对字段进行自动增值比如:SQL语句updatetablesetdata=data+1;用THINKPHP可以表达为$data['data']=array('exp','data+1');$table->where(1)->save($data); ...
首页上一页...636637638639640...下一页尾页