从没有regex的列表中提取值

2024-10-03 13:19:36 发布

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

有一个包含中间有特殊字符的值的列表:

myLst = ['5-8','20130-23199','1025-2737']

如何在不使用regex的情况下提取介于-之间的值

我用regex“解决”了这个问题,但是它的速度非常慢


Tags: 列表情况速度regex特殊字符mylst
3条回答
myLst = ['5-8','20130-23199','1025-2737']

结果=[]

[myLst中s的结果扩展([s.split('-')[0],s.split('-')[1]])]

打印结果

你可以用range()来实现

for i in myLst:
  tmp = i.split("-")
  print(list(range(int(tmp[0])+1,int(tmp[1]))))

使用^{}

myLst = ['5-8','20130-23199','1025-2737']

result = [s.split('-') for s in myLst]

print(result)
#[['5', '8'], ['20130', '23199'], ['1025', '2737']]

相关问题 更多 >