所以我有一个字符串路径列表:
x = ['../../scene/temp_5a/458754/1_car.png',
'../../scene/temp_5a/458754/2_car.png',
'../../scene/temp_5a/458754/10_car.png',
'../../scene/temp_5a/458754/15_car.png',
'../../scene/temp_5a/458754/3_car.png']
我需要按_car
前面的数字排序。有人知道一个快速的方法吗?你知道吗
我目前有这个,但似乎是分裂得到所有的数字。我只想得到_car
前面的数字。你知道吗
def atoi(text):
return int(text) if text.isdigit() else text
def natural_keys(text):
return [ atoi(c) for c in re.split('(\d+)', text) ]
x.sort(key=natural_keys) # gives an error
我不知道为什么你的正则表达式给你一个错误,它对我有用。或者换个正则表达式?你知道吗
用
r'.*\/([^_]*)_.*'
替换你的也可以:输出:
我的方法是拆分字符串并使用
_car
前面的数字作为key
进行比较。你知道吗相关问题 更多 >
编程相关推荐