#python #list
Например, есть список: ['Город Москва', 'Город Киев', 'Город Харьков', 'Город Краснодар'] Как вернуть индекс элемента зная его значение? Например Харьков.
Ответы
Ответ 1
In [33]: items Out[33]: ['Город Москва', 'Город Киев', 'Город Харьков', 'Город Краснодар'] решение "в лоб": In [34]: [i for i,x in enumerate(items) if 'Харьков' in x][0] Out[34]: 2Ответ 2
lst = ['Город Москва', 'Город Киев', 'Город Харьков', 'Город Краснодар'] pattern = 'Харьков' # Чтобы остановиться на первом совпадении for i in range(len(lst)): if pattern in lst[i]: print(i) break # Чтобы получить все индексы где есть паттерн print(*[i for i in range(len(lst)) if pattern in lst[i]])Ответ 3
Я тоже сражусь за оригинальность: list = ['Город Москва', 'Город Киев', 'Город Харьков', 'Город Краснодар'] for index, elem in enumerate(list): if (elem.find('Харьк')!= -1): print(index) breakОтвет 4
list=['Город Москва', 'Город Киев', 'Город Харьков', 'Город Краснодар'] i=-1 for elem in list: i+=1 if elem==('Город Харьков'): break print(i)Ответ 5
Просто примените метод index(): In[2]: lst = ['Город Москва', 'Город Киев', 'Город Харьков', 'Город Краснодар'] In[3]: lst.index('Город Харьков') Out[3]: 2
Комментариев нет:
Отправить комментарий