python里使用正则表达式的重复模式

在前面学习的正则表达式,都是把每一个字符写出来的,但是如果有重复的字符,也需要写出来吗?比如重复1000个字符,这时全写出来就不是很聪明的做法了,那么怎么办呢?可以使用某种规则来生成。如下面的例子:#python 3. 6 #蔡军生 #http://blog.csdn.net/caimouse/article/details/51749579 # import re def test_pat...
阅读(298) 评论(0)

python里使用正则的finditer()函数

在前面学习了findall()函数,它可以一次性找到多个匹配的字符串,但是不能提供所在的位置,并且是一起返回的,如果有数万个一起返回来,就不太好处理了,因此要使用finditer()函数来实现每次只返回一个,并且返回所在的位置,如下例子:#python 3. 6 #蔡军生 #http://blog.csdn.net/caimouse/article/details/51749579 # impo...
阅读(412) 评论(0)

python里使用正则的findall函数

在前面学习了正则的search()函数,这个函数可以找到一个匹配的字符串返回,但是想找到所有匹配的字符串返回,怎么办呢?其实得使用findall()函数。如下例子:#python 3. 6 #蔡军生 #http://blog.csdn.net/caimouse/article/details/51749579 # import re text = 'abbaaabbbbaaaaa' patt...
阅读(321) 评论(0)

python里实现插入排序算法

有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一个数,但要求插入后此数据序列仍然有序,这个时候就要用到一种新的排序方法——插入排序法,插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据,算法适用于少量数据的排序,时间复杂度为O(n^2)。是稳定的排序方法。插入算法把要排序的数组分成两部分:第一部分包含了这个数组的所有元素,但将最后一个元...
阅读(271) 评论(0)

什么是软件开发?

有一个销售的同事在会议上说,你们软件开发人员真好,坐在电脑前打打代码就可以完成工作了。还有一些对软件开发不懂的老板说,你们软件开发不就是写几行代码就可以了吗。可见,没有深入软件开发的了解,永远都是这么肤浅的认识。其实软件开发总共有11个过程:定义问题需求分析规划构造软件架构详细设计编码与调试单元测试集成测试集成系统测试保障维护也许有时候解决的功能比较少,一上来就编码,发布软件就解决了,就认为软件开...
阅读(440) 评论(0)

python里使用reduce()函数

reduce()函数在库functools里,如果要使用它,要从这个库里导入。reduce函数与map函数有不一样地方,map操作是并行操作,reduce函数是把多个参数合并的操作,也就是从多个条件简化的结果,在计算机的算法里,大多数情况下,就是为了简单化。比如识别图像是否是一只猫,那么就是从众多的像素里提炼出来一个判断:是或否。可能是几百万个像素,就只出来一个结果。在GOOGLE大规模集群里,就...
阅读(477) 评论(0)

python里使用map()函数

在python里有一个函数map(),它有点高大上的感觉。或许你已经看过GOOGLE最挣钱的论文:“MapReduce: Simplified Data Processing on Large Clusters”Google的那篇MapReduce论文里说:Our abstraction is inspired by the map and reduce primitives present in...
阅读(365) 评论(0)

python里除了继承修改类之外还有装饰器也能

python是面向对象的语言,它有类的继承,因此它是可以修改基类函数的功能。但是除了继承之外,类函数的功能也可以使用装饰器来修改,这种功能叫做装饰类。为了学习装饰类,需要好好地查看下面的代码:#python 3.6 #定义装饰器函数 def decorator(aClass): class newClass: def __init__(self, age): ...
阅读(305) 评论(0)

python里装饰器级连的使用

从前面的文章来看,学会了为什么要使用装饰器,也明白了装饰器是什么了,但是你也许会问,是否可以在装饰器前面再添加一层装饰器,会怎么样呢?就像大楼一样,一层一层地叠在一起。其实是可以的。现在我们就来学习这种堆叠技术,与类的继承是有相似之处,可以不断地继承下去。代码如下:#python 3.6 def star(func): def inner(*args, **kwargs): ...
阅读(350) 评论(0)

python里使用带参数的装饰器

在前面一文《python里为什么需要使用装饰器(decorator)》里,我们学习了为什么需要装饰器,知道装饰器就是为了不修改原来函数的代码,又达到增加功能的作用。其实为了装饰器更通用化,那么装饰器是否也可以带参数呢?其实是可以的,这样更加通用化了,达到共享极点。在前面也学习《为什么要使用闭包(closures)》一文,知道参数可以嵌套函数里实现隐藏,并且实现全局参数的功能,与函数一起绑定。因此只...
阅读(325) 评论(0)

python里为什么需要使用装饰器(decorator)

为什么需要使用装饰器呢?其实很多人学习python之后都会问这个问题。这一次,我来深入地学习一下什么是装饰器,以及为什么需要它。其实这个装饰器就是我们这样的程序员太“懒”了,基本上什么事情都想少做,追求是DRY,那么什么是DRY,如下:DRY(Don't repeat yourself ),字面意思来看:"不要重复自己"。强调的意思就是在进行编程时相同的代码不要重复写,最好只写一次,然后可以在其他...
阅读(322) 评论(0)

为什么要使用闭包(closures)

闭包是一个难学的概念,首先要搞清楚为什么需要闭包?其实闭包的出现往往是函数式编程的语言里,在面向对象的编程语言里是可以不需要闭包的。因为闭包作用如下:1. 避免使用全局变量,实现数据隐藏和保持,也就是面向对象的特性:封装。2. 当成员变量比较少,以及方法只有一个时,比类更简单实现。3. 数据和函数一起封装,适应异步或并发运行。什么时候定义了一个闭包当在一个函数里嵌套定义一个函数时,就会产生一个闭包...
阅读(284) 评论(0)

在win10里从源码编译nodejs的安装包和学习源码

大家其实都是从网站上下载直接安装文件的,为什么还要从源码安装呢?可能原因就两个,一个想自己优化,添加一个特定的东西;另一个想学习nodejs的实现,知道为什么这样实现的。我这里主要为学习nodejs的实现,所以要到下面的网站下载源码:https://nodejs.org/en/download/源码在这个连接里:https://nodejs.org/dist/v6.11.3/node-v6.11....
阅读(328) 评论(0)

python里求解物理学上的双弹簧质能系统

物理的模型如下:在这个系统里有两个物体,它们的质量分别是m1和m2,被两个弹簧连接在一起,伸缩系统为k1和k2,左端固定。假定没有外力时,两个弹簧的长度为L1和L2。由于两物体有重力,那么在平面上形成摩擦力,那么摩擦系数分别为b1和b2。所以可以把微分方程写成这样:这是一个二阶的微分方程,为了使用python来求解,需要把它转换为一阶微分方程。所以引入下面两个变量:这两个相当于运动的速度。通过运算...
阅读(251) 评论(0)

python里预先编译正则表达式提高效率

在re的正则表达式模块里,可以通过模块的方式来访问正则表达式,但是如果重复多次地使用正则表达式,最好是使用compile函数把正则表达式编译成对象RegexObject,这样会大大地提高搜索的效率,因为基于非编译方式访问时,是使用模块里的一小块缓冲来进行的。如下面的例子:import re # Precompile the patterns regexes = [ re.compile(...
阅读(287) 评论(0)
1658条 共111页首页 上一页 1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:5585579次
    • 积分:73049
    • 等级:
    • 排名:第24名
    • 原创:1586篇
    • 转载:61篇
    • 译文:11篇
    • 评论:2086条
    文章存档
    最新评论