随笔 - 203  文章 - 11  评论 - 15  阅读 - 81万
01 2013 档案
python脚本自动发邮件功能
摘要:最近给项目加监控,用python写了一个脚本,在出错的时候自动发邮件通知的功能。代码如下#! /usr/bin/python# -*- coding: utf-8 -*- from smtplib import SMTPSMTPSVR='mail.xxx.com' #smtp服务器域名origHdrs=['From:monitor@xxx.com','To:cax@xxx.com,monitor@xxx.com','Subject:视频出现异常'] #定义邮件头origBody=['xxx','yyy 阅读全文
posted @ 2013-01-31 15:54 mingaixin 阅读(3768) 评论(0) 推荐(0) 编辑
python多重继承新算法C3
摘要:mro即 method resolution order (方法解释顺序),主要用于在多继承时判断属性的路径(来自于哪个类)。在python2.2版本中,算法基本思想是根据每个祖先类的继承结构,编译出一张列表,包括搜索到的类,按策略删除重复的。但是,在维护单调性方面失败过(顺序保存),所以从2.3版本,采用了新算法C3。为什么采用C3算法C3算法最早被提出是用于Lisp的,应用在Python中是为了解决原来基于深度优先搜索算法不满足本地优先级,和单调性的问题。本地优先级:指声明时父类的顺序,比如C(A,B),如果访问C类对象属性时,应该根据声明顺序,优先查找A类,然后再查找B类。单调性:如果在 阅读全文
posted @ 2013-01-31 15:41 mingaixin 阅读(5801) 评论(1) 推荐(2) 编辑
python的多重继承
摘要:python和C++一样,支持多继承。概念虽然容易,但是困难的工作是如果子类调用一个自身没有定义的属性,它是按照何种顺序去到父类寻找呢,尤其是众多父类中有多个都包含该同名属性。对经典类和新式类来说,属性的查找顺序是不同的。现在我们分别看一下经典类和新式类两种不同的表现:经典类:#! /usr/bin/python# -*- coding:utf-8 -*-class P1(): def foo(self): print 'p1-foo'class P2(): def foo(self): print 'p2-foo' def bar(self): ... 阅读全文
posted @ 2013-01-31 14:55 mingaixin 阅读(8712) 评论(0) 推荐(3) 编辑
深度优先搜索与广度优先搜索对比
摘要:深度优先搜索广度优先搜索 阅读全文
posted @ 2013-01-31 11:27 mingaixin 阅读(498) 评论(0) 推荐(0) 编辑
php的垃圾回收机制
摘要:php手册: http://www.php.net/manual/zh/features.gc.refcounting-basics.php http://www.php.net/manual/zh/features.gc.collecting-cycles.php http://www.php.net/manual/zh/features.gc.performance-considerations.php 阅读全文
posted @ 2013-01-31 11:23 mingaixin 阅读(175) 评论(0) 推荐(0) 编辑
java的垃圾回收机制
摘要:转载自: http://developer.51cto.com/art/201009/227691.htm垃圾收集GC(Garbage Collection)是Java语言的核心技术之一,之前我们曾专门探讨过Java 7新增的垃圾回收器G1的新特性,但在JVM的内部运行机制上看,Java的垃圾回收原理与机制并未改变。垃圾收集的目的在于清除不再使用的对象。GC通过确定对象是否被活动对象引用来确定是否收集该对象。GC首先要判断该对象是否是时候可以收集。两种常用的方法是引用计数和对象引用遍历。引用计数收集器引用计数是垃圾收集器中的早期策略。在这种方法中,堆中每个对象(不是引用)都有一个引用计数。当一 阅读全文
posted @ 2013-01-31 11:21 mingaixin 阅读(390) 评论(0) 推荐(0) 编辑
python垃圾回收机制
摘要:转载自: http://my.oschina.net/hebianxizao/blog/57367现在的高级语言如java,c#等,都采用了垃圾收集机制,而不再是c,c++里用户自己管理维护内存的方式。自己管理内存极其自由,可以任意申请内存,但如同一把双刃剑,为大量内存泄露,悬空指针等bug埋下隐患。 对于一个字符串、列表、类甚至数值都是对象,且定位简单易用的语言,自然不会让用户去处理如何分配回收内存的问题。 python里也同java一样采用了垃圾收集机制,不过不一样的是,python采用的是引用计数机制为主,标记-清除和分代收集两种机制为辅的策略。 引用计数机制:python里每一个... 阅读全文
posted @ 2013-01-31 11:18 mingaixin 编辑
python中的自省
摘要:python中的自省,介绍一下几个重要的函数:dir函数,传入的参数是对象,返回该对象的所有属性和函数列表:>>> import string>>> dir(string)['Formatter', 'Template', '_TemplateMetaclass', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '_float', 阅读全文
posted @ 2013-01-29 11:32 mingaixin 阅读(467) 评论(0) 推荐(0) 编辑
python中的反射
摘要:python是如何体现反射的:globals()这个函数返回一个map,这个map的key是全局范围内对象的名字,value是该对象的实例。在不导入任何module下,执行globals()的结果如下:>>> globals(){'__builtins__': <module '__builtin__' (built-in)>, '__name__': '__main__', '__doc__': None, '__package__': None}在导入sys后,可以 阅读全文
posted @ 2013-01-29 11:21 mingaixin 阅读(635) 评论(0) 推荐(0) 编辑
python 实现单例模式
摘要:class Singleton(object): _instance = None def __new__(cls, *args, **kwargs): if not cls._instance: cls._instance = super(Singleton, cls).__new__(cls, *args, **kwargs) return cls._instance if __name__ == '__main__': s1=Singleton() s2=Singleton() if(i... 阅读全文
posted @ 2013-01-29 10:43 mingaixin 阅读(476) 评论(1) 推荐(0) 编辑
Python容易混淆的地方
摘要:转载自: http://blog.csdn.net/carolzhang8406/article/details/6855525每门编程语言都有易混淆的部分,下面列举出一些Python的易混淆知识点。== 和 is 的区别在Python中,”==” 操作符测试值的相等性; “is”表达式测试对象的一致性,即是否指向同一个对象。list1 = [1,('a',3)]list2 = [1,('a',3)]list1 == list2, list1 is list2 #(True,False)说明:list1和list2通过了”==”测试 (他们的值相等,因为它们的所 阅读全文
posted @ 2013-01-28 17:23 mingaixin 阅读(584) 评论(0) 推荐(0) 编辑
python __init__和__new__之间的区别
摘要:转载自 http://blog.csdn.net/carolzhang8406/article/details/68560561 如果在类中同时定义了__init__和__new__,在创建对象的时候会有优先使用__new__如class A(object): def __init__(self): print("in init") def __new__(self): print("in new") A()2new方法会返回所构造的对象,init则不会,在使用new返回对象的时候会隐式调用init函数。new函数必须以cls作为第一个参数,而init则 阅读全文
posted @ 2013-01-28 17:21 mingaixin 阅读(3747) 评论(1) 推荐(0) 编辑
PHP 5.3新版特性
摘要:转载自 http://developer.51cto.com/art/200903/115995.htmhttp://developer.51cto.com/art/200903/115995_1.htm一、mysql驱动mysqlnd一直以来,php都是通过mysql客户端连接mysql,而现在mysql官方已经推出php版的mysql客户端,而这个mysqlnd有效降低内存的使用以及提高性能。具体可以看:http://dev.mysql.com/downloads/connector/php-mysqlnd/http://forge.mysql.com/wiki/PHP_MYSQLND从图 阅读全文
posted @ 2013-01-28 16:52 mingaixin 阅读(343) 评论(0) 推荐(0) 编辑
Python闭包的概念、形式与应用
摘要:转载自: http://developer.51cto.com/art/201006/208139.htm自己现在对 闭包还不是很明白,转载到此,做个备份!闭包并不是什么新奇的概念,它早在高级语言开始发展的年代就产生了。51CTO在此之前也曾陆续报导了《学习Scala的闭包》、《PHP 5.3闭包语法初探》以及《揭开Javascript闭包的真实面目》。闭包(Closure)是词法闭包(Lexical Closure)的简称。对闭包的具体定义有很多种说法,这些说法大体可以分为两类:◆一种说法认为闭包是符合一定条件的函数,比如参考资源中这样定义闭包:闭包是在其词法上下文中引用了自由变量的函数。◆ 阅读全文
posted @ 2013-01-28 16:25 mingaixin 阅读(723) 评论(0) 推荐(0) 编辑
python 类型true,false判断
摘要: 阅读全文
posted @ 2013-01-25 17:29 mingaixin 阅读(1612) 评论(0) 推荐(0) 编辑
python类型转换、数值操作
摘要:python类型转换、数值操作python类型转换函数 描述int(x [,base ]) 将x转换为一个整数long(x [,base ]) 将x转换为一个长整数float(x ) 将x转换到一个浮点数complex(real [,imag ]) 创建一个复数str(x ) 将对象 x 转换为字符串repr(x ) 将对象 x 转换为表达式字符串eval(str ) 用来计算在字符串中的有效Python表达式,并返回一个对象tuple(s ) 将序列 s 转换为一个元组list(s ) 将序列 s 转换为一个列表chr(x ) 将一个整数转换为一个字符unichr(x ) 将一个整数转换为U 阅读全文
posted @ 2013-01-25 17:27 mingaixin 阅读(243) 评论(0) 推荐(0) 编辑
用python从redis的有序集合中一次性删除多个值
摘要:最近做的一个东西,需要用python从redis的有序集合中一次性删除多个值;redis的自带方法zrem是支持此功能的# 移除多个元素redis> ZREM page_rank baidu.com bing.com(integer) 2python redis 的api 中也支持zrem(self, name, *values) Remove member ``values`` from sorted set ``name``参数 *values 代表 values是一个元组但是我在用这个方法的时候,一直实现不了删除多个值,代码如下def zDelByValues(sel... 阅读全文
posted @ 2013-01-25 17:21 mingaixin 阅读(4802) 评论(0) 推荐(0) 编辑
python判断序列是否为空
摘要:m1 = []m2 = ()m3 = {}判断他们是否为空的高效方法是:if m1: ......if not m2: ...... 阅读全文
posted @ 2013-01-25 17:04 mingaixin 阅读(5761) 评论(1) 推荐(0) 编辑
python 列表转换成字符串
摘要:python中的列表list = ['1','2','3','4']转成str型'1,2,3,4'','.join(list) 阅读全文
posted @ 2013-01-25 17:02 mingaixin 阅读(23792) 评论(2) 推荐(0) 编辑
linux sed 批量替换多个文件中的字符串
摘要:原文: http://blog.csdn.net/kauu/article/details/1757325一、linux sed 批量替换多个文件中的字符串sed -i "s/oldstring/newstring/g" `grep oldstring -rl yourdir`例如:替换/home下所有文件中的www.bcak.com.cn为bcak.com.cnsed -i "s/www.bcak.com.cn/bcak.com.cn/g" `grep www.bcak.com.cn -rl /home`自己做了实现测试一下,的确可以替换。 阅读全文
posted @ 2013-01-18 16:52 mingaixin 阅读(424) 评论(0) 推荐(0) 编辑
python得到列表list的交集与差集
摘要:python 神勇,得到两个列表的差集和交集,根本不用循环,一句话就可以搞定交集:b1=[1,2,3]b2=[2,3,4]b3 = [val for val in b1 if val in b2]print b3差集:b1=[1,2,3]b2=[2,3,4]b3 = [val for val in b1 if val not in b2]print b3 阅读全文
posted @ 2013-01-17 16:48 mingaixin 阅读(3944) 评论(0) 推荐(0) 编辑
python: indentationerror: unexpected indent
摘要:转载自:http://blog.163.com/liuyuhuan0915@126/blog/static/78265448201141795730131/关键字: indentationerror: unexpected indent python 都知道python是对格式要求很严格的,写了一些python但是也没发现他严格在哪里,今天遇到了IndentationError: unexpected indent错误我才知道他是多么的严格。 以后遇到了IndentationError: unexpected indent你就要知道python编译器是在告诉你“Hi,老兄,你的文件里格式不对了 阅读全文
posted @ 2013-01-16 11:40 mingaixin 阅读(5451) 评论(0) 推荐(0) 编辑
解决 json_encode 中文乱码
摘要:来源: http://www.phpchina.com/archives/view-42572-1.html解决以下问题json_encode 中文后的字符串不可阅读json_encode 多级数组中文乱码问题json_encode 数组中包含换行时错误问题json_encode 数组中键为中文的问题http://blog.1dnet.net/?post=840【php代码】function _encode($arr){ $na = array(); foreach ( $arr as $k => $value ) { $na[_urlencode($k)] = _urlenco... 阅读全文
posted @ 2013-01-09 16:55 mingaixin 阅读(416) 评论(0) 推荐(0) 编辑
yii blog页面不能正确显示js,css文件的原因分析
摘要:昨天从yii官网下载了一个yii源码,发现blog页面的js,css都显示为 Access Denied! 整个页面没有样式,非常杂乱。根据"Access Denied!"的提示,以为文件的权限不够,将真个目录都设置了777,依然有问题。经过进一步分析,发现是nginx的配置中拒绝了js,css的文件显示。修复方法如下:在某个虚拟主机server{}中加上如下的代码:location ~ .*\.(css|js)$ { expires 1h; }平滑重启nginx就可以生效了。kill -HUP `cat /usr/local/nginx/logs/nginx.pid` 阅读全文
posted @ 2013-01-09 16:45 mingaixin 阅读(521) 评论(0) 推荐(0) 编辑
mysql的limit查询优化
摘要:声明分享自: http://www.phpchina.com/archives/view-42500-1.html以下的文章主要是对MySQL limit查询优化的具体内容的介绍,我们大家都知道MySQL数据库的优化是相当重要的。其他最为常用也是最为需要优化的就是limit。MySQL的limit给分页带来了极大的方便,但数据量一大的时候,limit的性能就急剧下降。同样是取10条数据select*fromyanxue8_visitlimit10000,10select*fromyanxue8_visitlimit0,10就不是一个数量级别的。网上也很多关于limit的五条优化准则,都是翻译自 阅读全文
posted @ 2013-01-09 16:37 mingaixin 阅读(238) 评论(0) 推荐(0) 编辑
vim中代码块左右移动的命令
摘要:使用块选择命令 v(小写),V(大写) ,ctrl+v 选择需要移动的代码, 然后 左移动(<) ,右移动(>) 阅读全文
posted @ 2013-01-09 16:03 mingaixin 阅读(4543) 评论(0) 推荐(0) 编辑
Nginx出现“413 Request Entity Too Large”错误解决方法
摘要:客户端在测试服务器上上传大的图片,报“413 Request Entity Too Large”的错误,从网上搜索解决办法如下:解决方法:打开nginx主配置文件nginx.conf,找到http{}段,添加client_max_body_size 20m;Centos下 vi /usr/local/nginx/conf/nginx.conf重启NGINXkill -HUP `cat /usr/local/nginx/nginx.pid `恢复正常 阅读全文
posted @ 2013-01-08 15:29 mingaixin 阅读(1446) 评论(0) 推荐(0) 编辑
mysql命令行下创建删除索引
摘要:创建索引CREATE INDEX index_name ON tbl_name (column);删除索引DROP INDEX index_name ON tbl_name 阅读全文
posted @ 2013-01-08 15:24 mingaixin 阅读(1101) 评论(0) 推荐(0) 编辑
mysql 导出和导入数据库
摘要:1、Mysql导出数据库及表导出数据库 : mysql -uusername -ppassword databasename (tablename)> filename.sql2、Mysql导入数据库创建用户 :GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' IDENTIFIED BY 'username' WITH GRANT OPTION;创建数据库 :create database databasename; 创建数据表 :create table tablename.... 阅读全文
posted @ 2013-01-08 15:21 mingaixin 阅读(189) 评论(0) 推荐(0) 编辑
命令行下的curl使用详解
摘要:声明: 本文转载自 http://blog.sina.com.cn/s/blog_494e45fe0102dvuh.html1) curlhttp://www.yahoo.com回车之后,www.yahoo.com的html就稀里哗啦地显示在屏幕上了~~~~~2)嗯,要想把读过来页面存下来,是不是要这样呢?curlhttp://www.yahoo.com> page.html当然可以,但不用这么麻烦的!用curl的内置option就好,存下http的结果,用这个option: -ocurl -o page.htmlhttp://www.yahoo.com这样,你就可以看到屏幕上出现一个下 阅读全文
posted @ 2013-01-08 15:18 mingaixin 阅读(309) 评论(0) 推荐(0) 编辑

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示