Сообщение Re: [Python] dict find от 15.01.2015 5:54
Изменено 15.01.2015 5:56 savitar
Здравствуйте, IROV.., Вы писали:
IRO>Часто вижу такой код и сам грешу, да и вообще говорят что это ок!
IRO>
IRO>Что смущает, два раза идет поиск по ключу сначала в "находиться" а другой раз в "дай"
IRO>Да поиск по хеш таблице идет довольно быстро, но все же почему не хранить "последний" проверяемый индекс в таблице и сначала проверить на него, я думаю это должно сэкономить время(проверять только на is то есть указатели)
IRO>что я упустил?
Может dict.get()?
IRO>Часто вижу такой код и сам грешу, да и вообще говорят что это ок!
IRO>
IRO>if 'hello' in d:
IRO> print d['hello']
IRO>IRO>Что смущает, два раза идет поиск по ключу сначала в "находиться" а другой раз в "дай"
IRO>Да поиск по хеш таблице идет довольно быстро, но все же почему не хранить "последний" проверяемый индекс в таблице и сначала проверить на него, я думаю это должно сэкономить время(проверять только на is то есть указатели)
IRO>что я упустил?
Может dict.get()?
v = d.get()
if v is not None:
print vRe: [Python] dict find
Здравствуйте, IROV.., Вы писали:
IRO>Часто вижу такой код и сам грешу, да и вообще говорят что это ок!
IRO>
IRO>Что смущает, два раза идет поиск по ключу сначала в "находиться" а другой раз в "дай"
IRO>Да поиск по хеш таблице идет довольно быстро, но все же почему не хранить "последний" проверяемый индекс в таблице и сначала проверить на него, я думаю это должно сэкономить время(проверять только на is то есть указатели)
IRO>что я упустил?
Может dict.get()?
IRO>Часто вижу такой код и сам грешу, да и вообще говорят что это ок!
IRO>
IRO>if 'hello' in d:
IRO> print d['hello']
IRO>IRO>Что смущает, два раза идет поиск по ключу сначала в "находиться" а другой раз в "дай"
IRO>Да поиск по хеш таблице идет довольно быстро, но все же почему не хранить "последний" проверяемый индекс в таблице и сначала проверить на него, я думаю это должно сэкономить время(проверять только на is то есть указатели)
IRO>что я упустил?
Может dict.get()?
v = d.get('hello')
if v is not None:
print v