在Python中,如何list.index使用模糊匹配获得列表中项目的位置(使用)?
例如,如何获取*berry以下列表中表单中所有水果的索引?
fruit_list = ['raspberry', 'apple', 'strawberry']
# Is it possible to do something like the following?
berry_fruit_at_positions = fruit_list.index('*berry')
Run Code Online (Sandbox Code Playgroud)
有人有主意吗?
Ste*_*ski 51
使用正则表达式:
import re
fruit_list = ['raspberry', 'apple', 'strawberry']
berry_idx = [i for i, item in enumerate(fruit_list) if re.search('berry$', item)]
Run Code Online (Sandbox Code Playgroud)
没有正则表达式:
fruit_list = ['raspberry', 'apple', 'strawberry']
berry_idx = [i for i, item in enumerate(fruit_list) if item.endswith('berry')]
Run Code Online (Sandbox Code Playgroud)
eum*_*iro 28
尝试:
fruit_list = ['raspberry', 'apple', 'strawberry']
[ i for i, word in enumerate(fruit_list) if word.endswith('berry') ]
Run Code Online (Sandbox Code Playgroud)
收益:
[0, 2]
Run Code Online (Sandbox Code Playgroud)
endswith根据您的匹配需求替换不同的逻辑.