как оптимиизовать ассоциации с командами?
Есть такой код:
play_commands= ['включи','запусти','вруби','сыграй']
search_commands = ['найди','найди в гугл','найди в гугле','загугли','найди в интернете','найти в интернете']
for key in play_commands:
if command.startswith(key):
command=command[len(key)+1:]
play(command)
return
for key in search_commands:
if command.startswith(key):
command=command[len(key)+1:]
search(command)
return
в будущем будет появляться больше новых команд и асоциаций к ним. Как это всё оптимизировать чтобы свести появление новых commands и чтобы не повторялся циклы примерно как:
for key in play_commands:
Ответы (1 шт):
Автор решения: Dingovina
→ Ссылка
Для решения этой проблемы можно использовать словарь, в котором по названию команды будет храниться список ассоциаций.
commands_blocks = {
'play_commands': [
'включи',
'запусти',
'вруби',
'сыграй',
],
'search_commands': [
'найди',
'найди в гугл',
'найди в гугле',
'загугли',
'найди в интернете',
'найти в интернете',
]
}
for command_name, key in commands_blocks.items():
...