python学习笔记:(三)

来源:互联网 发布:网络组策略如何打开 编辑:程序博客网 时间:2024/04/30 19:13

7.正则表达式

^匹配字符串的开始

$匹配字符串的结尾

\b匹配一个单词的边界

\d匹配任意数字

\D匹配任意非数字字符

x?匹配一个可选的x字符(换言之,它匹配1次或者0次x字符)

x*匹配0次或者多次x字符

x+匹配1次或者多次x字符

x{n,m}匹配x字符,至少n次,至多m次

(a|b|c)要么匹配a,要么匹配b,要么匹配c

(x)一般情况下表示一个记忆组(remembered group),你可以利用re.search函数返回对象的groups()函数获取它的值。


8、内置函数:locals()和globals()

      它们提供了基于dictionary的访问局部和全局变量的方式。

>>> def foo(arg):
...     x=1
...     print locals()
...
>>> foo(7)
{'x': 1, 'arg': 7}
>>> foo('bar')
{'x': 1, 'arg': 'bar'}


Note:变量的动态访问

使用locals和globals函数,通过提供便利的字符串名字就可以动态地得到任何变量的值。这种方法提供了这样的功能:getattr函数允许通过提供函数的字符串名来动态地访问任意的函数。

8.1、locals()和globals()之间的另外一个重要区别,locals()是只读的,globals()不是。

>>> def foo(arg):
...     x=1
...     print locals()
...     locals()['x']=2
...     print 'x = ',x
...
>>> z=7
>>> print 'z=',z
z= 7
>>> foo(3)
{'x': 1, 'arg': 3}
x =  1
>>> globals()['z']=8
>>> print 'z=',z
z= 8

9.XML........