2024-09-26 18:10:23 发布
网友
我正试图搜索一个列表,找出任何出现的两个数字背靠背
import re list1 = ["something10", "thing01", "thingy05"] list2 = re.findall(re.match([0-1][0-9]), list1)
每当我在Python命令行中尝试上述操作时,就会出现以下错误
IndexError: list index out of range
这个错误是什么意思?我该如何修复它
re.findall将模式(或编译的RE)作为第一个参数,将字符串作为第二个参数。你两个都失败了
re.findall
re.match返回匹配对象或None两者都不能作为re.findall的参数!把r'[0-1][0-9]'模式传过去就行了
re.match
None
r'[0-1][0-9]'
第二个参数必须是字符串,而不是列表,因此,请使用循环…:
list2 = [] for astring in list1: list2.extend(re.findall(r'[0-1][0-9]', astring))
re.findall
将模式(或编译的RE)作为第一个参数,将字符串作为第二个参数。你两个都失败了re.match
返回匹配对象或None
两者都不能作为re.findall
的参数!把r'[0-1][0-9]'
模式传过去就行了第二个参数必须是字符串,而不是列表,因此,请使用循环…:
相关问题 更多 >
编程相关推荐