杂七杂八的小笔记
来源:互联网 发布:类似双程的网络剧 编辑:程序博客网 时间:2024/05/16 10:32
统计汉字与英文单词的数量,使用正则表达式。摘抄自http://iregex.org/。
“使用正则式 "(?x) (?: [\w-]+ | [\x80-\xff]{3} )"
获得utf-8文档中的英文单词和汉字的列表。”在utf8编码中,要用3个这样的\x**才能表示一个汉字(这样超不公平的,耗我们的空间)。从\x80之后才是汉字的编码,所以是[\x80-\xff]{3}
regex=re.compile("(?x) (?: [\w-]+ | [\x80-\xff]{3} )")regex.findall(s)#s是字符串
有时候为了省带宽,需要用上压缩、解压缩。python中的模块zlib就可以用了。参照http://blog.csdn.net/jgood/article/details/4608546,以及python的document
import zlib, urllibfp = urllib.urlopen('http://localhost/default.html') # 访问的到的网址。data = fp.read()fp.close()#---- 压缩数据流,一次性全部load进内存来压缩str1 = zlib.compress(data, zlib.Z_BEST_COMPRESSION)#后面是一个int值,1-9,数字越大压缩率越大,相应速度就慢了。str2 = zlib.decompress(str1)print '原始数据长度:', len(data)print '-' * 30print 'zlib.compress压缩后:', len(str1)print 'zlib.decompress解压后:', len(str2)print '-' * 30#---- 使用Compress, Decompress对象对数据流进行压缩/解压缩,可以分多阶段压缩。com_obj = zlib.compressobj(zlib.Z_BEST_COMPRESSION)decom_obj = zlib.decompressobj()str_obj = com_obj.compress(data)str_obj += com_obj.flush()print 'Compress.compress压缩后:', len(str_obj)str_obj1 = decom_obj.decompress(str_obj)str_obj1 += decom_obj.flush()print 'Decompress.decompress解压后:', len(str_obj1)print '-' * 30#---- 使用Compress, Decompress对象,对数据进行分块压缩/解压缩。com_obj1 = zlib.compressobj(zlib.Z_BEST_COMPRESSION)decom_obj1 = zlib.decompressobj()chunk_size = 30;#原始数据分块str_chunks = [data[i * chunk_size:(i + 1) * chunk_size] / for i in range((len(data) + chunk_size) / chunk_size)]str_obj2 = ''for chunk in str_chunks: str_obj2 += com_obj1.compress(chunk)str_obj2 += com_obj1.flush()print '分块压缩后:', len(str_obj2)#压缩数据分块解压str_chunks = [str_obj2[i * chunk_size:(i + 1) * chunk_size] / for i in range((len(str_obj2) + chunk_size) / chunk_size)]str_obj2 = ''for chunk in str_chunks: str_obj2 += decom_obj1.decompress(chunk)str_obj2 += decom_obj1.flush()print '分块解压后:', len(str_obj2) # ---- 结果 ------------------------原始数据长度: 5783------------------------------zlib.compress压缩后: 1531zlib.decompress解压后: 5783------------------------------Compress.compress压缩后: 1531Decompress.decompress解压后: 5783------------------------------分块压缩后: 1531分块解压后: 5783
<unistd.h>,char *getcwd(char * buffer,size_t size),chdir,fchdir<sys/stat.h><sys/types.h>,int mkdir(const char *pathname,mode_t mode), rmdirls -lih列出目录下的文件权限信息,i表示inode,h表示human readable,12194395 drwxrwxr-x 3 gauss gauss 4.0K 9月 7 13:21 %APPDATA% 文件夹11141124 -rw-r--r-- 1 gauss gauss 8.3K 8月 30 15:10 examples.desktop 文件 int chmod(const char *path,mode_t mode)int chown(const char *path,uid_t owner,gid_t group)*******************************************************************************************************************************vmstat 显示虚拟内存的使用情况。procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- r b swpd free buff cache si so bi bo in cs us sy id wa 3 0 0 1082148 108776 1174296 0 0 31 34 571 890 14 6 78 1procs:r,等待获得cpu时间以运行的进程数。b处于不可中断休眠的进程数memory:swpd,已用虚拟内存大小。free,空闲内存大小。buff,用作磁盘缓存的内存大小。cache,用作缓存的内存大小swap,si,每秒从磁盘换入的内存大小,so类似。io,bi每秒从磁盘都取的块数,bo类似。system,in每秒中断发生次数,cs每秒上下文切换的次数cpu,us用户程序所占cpu的时间比例,显示了用户进程的繁忙程度。sy内核代码所占比例。id表示cpu空闲所占的时间比例。wa用于等待I/O操作所占的比例。僵尸进程(Zombie Process)是由于子进程推出后父进程没有使用wait函数收集子进程状态而产生的,僵尸进程是一个已经结束了的进程,不占用系统的内存资源,对cpu时间几乎么有任何影响,只是会占用进程标中的位置。但是由于进程表空间有限,也就是进程数是有限,所以我们要杀掉这些占着茅坑不拉屎的进程。僵尸进程的存在是为了给程序员提供一些进程信息。运行中是否出现了错误。解决:只要我们把父进程给杀了,那么这些僵尸进程就会给init进程收留,init进程会清理掉他们。
- 杂七杂八的小笔记
- 杂七杂八的小知识点
- 一些杂七杂八的笔记
- 杂七杂八的图片笔记
- JDBC的杂七杂八小问题
- 日常杂七杂八的学习笔记
- 杂七杂八笔记
- 杂七杂八的
- 杂七杂八的
- 杂七杂八的
- 杂七杂八小技巧
- Unity3d 杂七杂八小技巧
- C++杂七杂八小知识
- jquery 杂七杂八小方法
- SQL Server基础概念--杂七杂八的一些小地方
- 工作笔记之杂七杂八
- 杂七杂八的命令学习笔记(Python requirtments.txt)
- 杂七杂八的命令学习笔记(安装Theano 报错)
- MongoDB 副本集replSet 配置与分析
- 不止1.99亿!新12306.cn一期造价3.3亿元
- ashx页面中调用自定义的Profile
- 三种权限设计方案的归纳和比较
- web.xml配置文件
- 杂七杂八的小笔记
- learn of python driver for mongodb
- TCP心跳 | TCP keepAlive
- CMMI模型与SPICE标准对比分析
- hibernate+spring+struts
- Event对象(一)
- 关于delphi7 ActiveX的创建
- Java上传图片到服务器
- 成都JAVA培训,10月15日基础班传智播客