首页 > 其他分享 >re.findall()及for..in..迭代器_05

re.findall()及for..in..迭代器_05

时间:2022-08-21 17:45:29浏览次数:65  
标签:10 20 .. 05 height re print findall

re.findall(pattern, string, flags=0)

返回 pattern 在 string 中的所有非重叠匹配,以 字符串列表字符串元组列表 的形式。对 string 的扫描从左至右,匹配结果按照找到的顺序返回。 空匹配也包括在结果中。

返回结果取决于 pattern 中 捕获组 的数量。如果没有组,返回与整个模式匹配的字符串列表。如果有且仅有一个组,返回与该组匹配的字符串列表。如果有多个组,返回与这些组匹配的字符串元组列表。非捕获组不影响结果。

r_0 = re.findall(r'\w+=\d+', 'set width=20 and height=10') # 无捕获组
print(r_0)                                                 # ['width=20', 'height=10']

r_1 = re.findall(r'(\w+)=\d+', 'set width=20 and height=10') # 仅有一个捕获组
print(r_1)                                                   # ['width', 'height']

r_2 = re.findall(r'(\w+)=(\d+)', 'set width=20 and height=10') # 有两个捕获组
print(r_2)                                                     # [('width', '20'), ('height', '10')]

for..in..迭代器迭代元组列表

list_test = [('a',1),
             ('b',2),
             ('c',3)]
for i, j in list_test:
    print(i)
    print(j)

'''
a
1
b
2
c
3
'''

list_test = [('a',1,10),
             ('b',2,20),
             ('c',3,30)]
for i, j, k in list_test:
    print(i)
    print(j)
    print(k)

'''
a
1
10
b
2
20
c
3
30
'''

标签:10,20,..,05,height,re,print,findall
From: https://www.cnblogs.com/Ganders/p/16610411.html

相关文章