Python - Return 列表枚举的整数值

Python - Return integer value for list enumeration

是否有更简洁的方法来获取此代码中列表项位置的整数值:

a = ['m', 'rt', 'paaq', 'panc']
loc = [i for i, x in enumerate(a) if x == 'rt']
loc_str = str(loc).strip('[]')
loc_int = int(loc_str)
id_list = a[loc_int + 1:]
print id_list

Returns 'rt' 之后的所有项目作为列表 ['paaq'、'panc']

是,使用list.index()

a = ['m', 'rt', 'paaq', 'panc']
id_list = a[a.index('rt')+1:]
assert id_list == ['paaq', 'panc']

或者,对您的程序进行最小程度的更改:

a = ['m', 'rt', 'paaq', 'panc']
loc_int = a.index('rt')
id_list = a[loc_int + 1:]
print id_list

参考文献:

a[a.index('rt') + 1:]

这是在做 slicing 数组,从 a.index('rt') 开始。不指定结束 :] 意味着我们想要直到列表的末尾。