如果你对Python模块级函数在实际相关应用的方案中有不解之处时。你可以浏览以下的文章,我们今天主要向你介绍的是Python模块级函数的实际应用方案的详解,以及相关代码示例,下面让我们一起分享吧!
你不一定要产生一个 `RegexObject` 对象然後再调用它的方法;re 模块也提供了***函数调用如 match()、search()、sub() 等等。这些函数使用 RE 字符串作为***个参数,而後面的参数则与相应 `RegexObject` 的方法参数相同,返回则要么是 None 要么就是一个 `MatchObject` 的实例。
- #!python>>> print re.match(r'From\s+', 'Fromage amk')
None>>> re.match(r'From\s+', 'From amk Thu May 14
19:12:10 1998')<re.MatchObject instance at 80c5978>- Under the hood
这些函数简单地产生一个 RegexOject 并在其上调用相应的方法。它们也在缓存里保存编译後的对象,因此在将来调用用到相同 RE 时就会更快。你将使用这些Python模块级函数,还是先得到一个 `RegexObject` 再调用它的方法呢?如何选择依赖于怎样用 RE 更有效率以及你个人编码风格。如果一个 RE 在代码中只做用一次的话,那么模块级函数也许更方便。
如果程序包含很多的正则表达式,或在多处复用同一个的话,那么将全部定义放在一起,在一段代码中提前编译所有的 REs 更有用。从标准库中看一个例子,这是从 xmllib.py 文件中提取出来的:
- #!pythonref = re.compile( ... )entityref = re.
compile( ... )charref = re.compile( ... )starttagopen
= re.compile( ... )
我通常更喜欢使用编译对象,甚至Python模块级函数只用一次,but few people will be as much of a purist about this as I am。
【编辑推荐】
- Python 配置文件的实际应用解析
- Python安装配置的具体步骤的相关介绍
- python 编程语言在操作文件编码格式的应用
- Python 中文乱码问题的分析的具体方案介绍
- python语法入门中导入import与from时的代码示例