+ 1
Как сделать поиск по словарю?
Почему-то выдает ошибку, когда делаю поиск по словарю типа: a.find(dict). Пишет типа Expected type 'str'. Я выбрал поиск по словарю методом find именно по тому, что он может искать часть вхождения, например: 'хорошая'.find('хорош'), но так не работает. Как делать поиск по словарю, чтобы не выдавало ошибку, как я описал выше? Или какой ещё есть поиск по словарю с частичным вхождением?
6 ответов
+ 8
Словарь не имеет функции .find, потому я предлагал ищи по _списке_ ключей или значении (d.keys() или d.values()) ;)
+ 8
🇷🇺 Перейду на английский чтоб все поняли :)
🇬🇧 The question was about how to find substrings in dictionary entries. Because it was not specified if it was related to keys or values, I recommended the below:
Try iterating through the dictionary's keys or values. The .find() method will return the index of a string where the searched term was found or it will return -1 if not found:
# remember that dictionary *is not* ordered
d = {'abc': 'xyz', 'bca': 'yzx', 'cab': 'zxy'}
# looking in values
for i in d.values():
print(i.find('xy'))
# looking in keys
for i in d.keys():
print(i.find('ca'))
+ 1
thanks, bro. I try this!
+ 1
как тогда реализовать то, что я хочу?
+ 1
спасибо
+ 1
я уже понял смысл