在列表中搜索出现的特定字符

2024-09-26 18:10:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图搜索一个列表,找出任何出现的两个数字背靠背

import re
list1 = ["something10", "thing01", "thingy05"]
list2 = re.findall(re.match([0-1][0-9]), list1)

每当我在Python命令行中尝试上述操作时,就会出现以下错误

IndexError: list index out of range

这个错误是什么意思?我该如何修复它


Tags: 命令行importre列表match错误数字list2
1条回答
网友
1楼 · 发布于 2024-09-26 18:10:23

re.findall将模式(或编译的RE)作为第一个参数,将字符串作为第二个参数。你两个都失败了

re.match返回匹配对象或None两者都不能作为re.findall的参数!把r'[0-1][0-9]'模式传过去就行了

第二个参数必须是字符串,而不是列表,因此,请使用循环…:

list2 = []
for astring in list1:
    list2.extend(re.findall(r'[0-1][0-9]', astring))

相关问题 更多 >

    热门问题