首页 > 文章列表 > python中findall()和finditer()的区别

python中findall()和finditer()的区别

Python findall finditer
389 2022-08-07

1、findall()在输入字符串中查找所有匹配内容,如果匹配成功,则返回match列表对象。

如果匹配失败,则返回None。

2、finditer()在输入字符串中找到所有匹配内容,如果匹配成功,则返回可迭代的对象。

通过迭代对象每次都可以返回一个match对象,如果匹配失败,则返回None。

实例

import re
 
p = r'[Jj]ava'
text = 'I like Java and java'
 
match_list = re.findall(p, text)       ①
print(match_list)
 
match_iter = re.finditer(p, text)     ②
for m in match_iter:                    ③
    print(m.group())

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。