Mam duży słownik skonstruowany tak:Znajdź słownika elementy, których kluczem mecze podciąg
programs['New York'] = 'some values...'
programs['Port Authority of New York'] = 'some values...'
programs['New York City'] = 'some values...'
...
Jak mogę zwrócić wszystkie programs
którego klucz wymienia „New York” (wielkość liter) - który w powyższym przykładzie , zwróci wszystkie trzy elementy.
EDYCJA: Słownik jest dość duży i oczekuje się, że z czasem będzie większy.
Dokładnie. Tylko nie oczekuj, że będzie szybki, jeśli twój słownik jest duży. –
@MarkRansom Właśnie dodałem, że mój słownik jest dość duży i oczekuje się, że będzie większy. Zrobiło to 'program.get ('new york')' do tej pory, które było bardzo szybkie. –
Jeśli przechodzenie przez wszystkie klucze w słowniku jest zbyt wolne dla aplikacji, musisz zbudować bazę danych ukierunkowaną na tego typu zapytanie. Prawdopodobnie byłby to jakiś odwrócony indeks lub drzewo sufiksów. – mensi