Если вы планируете увеличить сложность своего бота, я бы предложил использовать регулярные выражения, например:
Сначала вы определяете функции, которые могут понадобиться вашему боту.
def greet_user(name):
print 'Hello, %s' % name
Затем вы определяете шаблон и команды:
import re
pattern = re.compile(r'!(?P<command>\w+)\s*(?P<args>\w*)')
commands = {'greet': greet_user}
Теперь вам просто нужно вызвать pattern.match()
с пользовательским вводом и соответствующей функцией:
m = pattern.match(string)
commands.get(m.group('command'))(m.group('args'))
Если пользователь вводит недопустимую команду, выдается ошибка TypeError.
Теперь вы можете добавить любую функцию, просто отредактировав commands
-dict.