
python
vinrex
这个作者很懒,什么都没留下…
展开
-
python 执行sh脚本文件
cmd = '/users/xxx/.../xx.sh' # 全路径或者./相对路径import subprocessp = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)while p.poll() == None: line = p.stdout.readli原创 2014-04-01 15:54:48 · 23693 阅读 · 1 评论 -
iOS推送现在只支持TLS了
苹果官方公告:https://developer.apple.com/news/?id=10222014a,原创 2014-10-28 20:07:43 · 1121 阅读 · 0 评论 -
sys.setdefaultencoding 引发 [Bad file descriptor]解决
为了彻底解决python转码的问题,我们可能需要在程序启动的时候加上下面两句: reload(sys) sys.setdefaultencoding("utf-8") 但是如果我们以这样的方式来启动: python test.py >> test.log 那么会看到这样的错误: IOError: [Errno 9] Bad file descriptor: ''原创 2014-08-14 12:09:01 · 3829 阅读 · 0 评论 -
python 2.7的字符串编码问题
【如何计算汉字字符串的长度】 s=u"我的" len(s)=2 print(s.encode('utf-8')) # utf-8环境汉字长度是以字为单位,print的时候必须编码为非unicode字符【unicode字符】“ unichr(11) # 将十进制的11转换为unicode字符 u'\0x0b',其作为dict的value调试时显示空格,作为key时显示原创 2014-08-13 19:44:04 · 10750 阅读 · 0 评论 -
stackless python如何给tasklet加锁
stacless本身并不支持锁机制,但是可以通过channel的send和receive方法来模拟,下面是一个简单的锁。import stacklessclass TaskLock(stackless.channel): def __init__(self): self._islock = False self.tasklet =原创 2014-08-13 10:08:33 · 1452 阅读 · 0 评论 -
Twisted adbapi:Twisted 关系数据库支持
【摘要】Twisted 是一个异步网络框架,不幸的是大部分数据库api实现只有阻塞式接口,twisted.enterprise.adbapi为此产生,它是DB-API 2.0 API的非阻塞接口,可以访问各种关系数据库。假定你已经了解: Python :-) 如何写一个简单的 Twisted Server (参见 tutorial) 熟悉数据库的相翻译 2014-08-07 18:13:27 · 10320 阅读 · 5 评论 -
python多线程threading.Condition示例及解析
import threading, timeclass Seeker(threading.Thread): def __init__(self, cond, name): super(Seeker, self).__init__() self.cond = cond self.name = name def ru原创 2014-07-14 20:40:44 · 7251 阅读 · 1 评论 -
通过gc.get_objects()检查当前运行的各对象数量
stats = []objects = gc.get_objects()objects_temp = objects[100:120]print('objects:', objects_temp)run_objects = {}run_others = {}for o in objects: if hasattr(o, '__class__'): key =原创 2014-08-05 20:19:40 · 2972 阅读 · 0 评论 -
shell和python获取内网ip地址
1、shell命令: linux: ifconfig|grep 'inet '|grep -v '127.0'|xargs|awk -F '[ :]' '{print $3}' mac:ifconfig|grep 'inet '|grep -v '127.0'|xargs|awk -F '[ :]' '{print $2}'原创 2014-07-11 11:45:47 · 5743 阅读 · 0 评论 -
使用Python生成器解决八皇后问题
像我这种对奇特的语言特性很热衷,对算法本身并不热衷也并不擅长的人,似乎很难去写一篇关于算法题的文章。好在我还有一个特点就是不管写了多么烂的代码都会拿出来得瑟一下,不怕被拍砖,于是便来分享一下关于使用Python中的yield来解决八皇后问题的心得。Python生成器PEP 255中详细介绍了Python Generator。简单来说它可以将一个函数当作可以迭代的对象来使用,此举真是转载 2014-07-28 19:03:56 · 3324 阅读 · 0 评论 -
twisted日志源码分析
twisted日志系统提供了按照日期自动创建日志文件的功能, 不需要启动reactor也可以使用 启动日志示例代码:outpath = '/Users/.../log' outname = 'server.log' if not os.path.exists(outpath) : os.mkdir(outpath) log.FileLogObser原创 2014-07-24 19:09:43 · 2111 阅读 · 1 评论 -
redis hash数据占用内存测试
对于hash或者普通string set(其实都是hash),内存占用明显跟key的数量有莫大的关系,key对应的value长度对于内存占用影响不大r = redis.Redis(host='127.0.0.1', port=6379, db=0)for i in xrange(100000): r.hmset('score:'+str(i), {'score': '10000', 'i原创 2014-07-25 12:08:06 · 6483 阅读 · 0 评论 -
python的接口实现zope.interface示例
python支持多继承,但是不支持接口,zope.inteface是其三方的接口实现库,大量用在twisted中原创 2014-07-25 15:08:10 · 7433 阅读 · 0 评论 -
基于twisted的web server框架简单原型
# -*- coding=utf-8 -*-import sys, osfrom twisted.web import server, resourcefrom twisted.internet import reactorfrom twisted.web import static, serverfrom twisted.web.client import Requestimpor原创 2014-07-24 14:03:27 · 1509 阅读 · 0 评论 -
编译自定义pypy解释器,独立运行pyc
众所周知,pypy执行效率要高出cpython 5~10倍,特别在网络并发方面,融合了stackless,最新基于python2.7的2.2.1版本比较稳定,完全可以用于生产环境。 不过pypy默认必须携带py文件运行,是否可以只部署pyc以便隐藏源码呢。这个官方文档已经有提到,具体的可以自己阅读 http://doc.pypy.org。 MacOsx编译自定义pypy解释器步骤:原创 2014-04-02 15:46:10 · 3872 阅读 · 0 评论 -
stackless + twisted 编程模型
class MyTasklet(): def result(self, content): print "html result-----" + content[0:10] self.return_channel.send(content) def resultError(self, content): print原创 2014-07-02 14:54:23 · 1438 阅读 · 0 评论 -
用python解华为“13张扑克牌抽取题目”
刚看到这个题目,其实完全可以moni原创 2014-07-15 13:41:25 · 5127 阅读 · 1 评论 -
python处理mysql中文字符长度
1、python文件头:# -*- coding: utf-8 -*- 2、mysql字段类型:utf8_general_ci,这个时候一个汉字长度为13、为保持通mysql一致,python代码中使用unicode字符串来判断含中文字符长度: len(u"ddd我的") 或者 len(u"ddd我的".decode('utf-8'))原创 2014-12-06 11:21:56 · 1380 阅读 · 0 评论