2017-06-15 58 views
-3

快速问题,如何使用正则表达式或任何方法来删除以下列表中以%符号结尾的每个数值。如果以前有人问过类似的问题,请点击链接,不需要投票回答问题。 感谢正则表达式删除python中以“%”结尾的数字

my_list = [['First Class', 'F, U', '150%'], ['P', '125%'], 
['Business Class', 'J, C, D, I', '125%'], 
['Premium Economy Class', 'W', '110%'], 
['Economy Class', 'Y, B', '100%'], 
['E, H, M', '75%'], 
['L, N, R, S, V, K', '50%'], 
['T', '30%'], 
['Not eligible for accrual', 'Z, Q, G', '0%']] 
+0

嗯,不知道如果你真的尝试过的东西你自己了吗?正是为什么你想使用正则表达式? – abccd

+0

嗯,正则表达式可能是'^ \ d +%$' –

+0

我尝试了一些我自己的东西,它可以工作,但是这些单词被分解成字母,这吸引了 – sheriff

回答

1

你可以只用一个正常list comprehensionendswith()测试子列表中的每个元素。

new_list = [[i for i in l if not i.endswith('%')] for l in my_list] 
print(new_list) 

[['First Class', 'F, U'], ['P'], ['Business Class', 'J, C, D, I'], ['Premium Economy Class', 'W'], ['Economy Class', 'Y, B'], ['E, H, M'], ['L, N, R, S, V, K'], ['T'], ['Not eligible for accrual', 'Z, Q, G']] 
+0

谢谢。比使用正则表达式更好 – sheriff

相关问题