【发布时间】:2020-10-25 11:44:50
【问题描述】:
我有以下快速问题,希望你能帮助我。
我有一个列表my_list,其中有大约 900 个元素,所有元素都具有以下格式:
"###" + _ + "元素名称"
像这样:
['123_rop','456_tuy','789_wqw',......]
如何找到仅包含前 3 位数字的完整元素名称?
例如,我想知道以“123”开头的元素的全名。
结果必须是:
result="123_rop"
列表中每个元素的前三个数字永远不会重复。
【问题讨论】:
-
您可以为此执行 for 循环或维护一个字典,其中键为
"###",值为"###" + _ + "the name of the element"(类似于{'123':'123_rop', '456':'456_tuy'})以加快搜索速度。 -
您可以使用列表理解和开头,stackoverflow.com/a/20461857/4985099
-
[x for x in my_list if x.split("_")[0]=='123']
标签: python list startswith