На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: RaD
  
    > Библиотека разбора пользовательского ввода
      Добрый день
      Я недавно начал изучать Питон и не все понимаю.

      Для себя пишу телеграмм-бота, жду от пользователя ввода. Нужно разобрать ввод на лексемы, понять что нужно и куда отправить и пр. Короче - сделать простой интерпретатор.
      Нашел модуль argparse, но он для командной строки. Есть возможность его функционал натравить на пользовательский ввод (по сути, одну строку, которую я получаю от сервера) и произвести всю работу в нем?
      Если нет, то посоветуйте, пожалуйста, как можно попроще реализовать разбор пользовательского ввода.

      Спасибо
        Регулярные выражения вам не помогут (модуль `re`)?
          По идее, используемая для описания грамматик языков программирования форма Бэкуса - Наура (и её разновидности) изначально предназначалась для описания грамматик как раз естественных языков. Так что можно воспользоваться наработками для синтаксических анализаторов.
          Для языка Python есть библиотека PyParsing. Установить можно командой: pip install pyparsing. pip находится в папке Python##\Scripts. Или закачать с PyPI (Python Package Index) и установить с диска.
          Хотя грамматика естественного языка конечно будет посложнее чем у ЯП. Но не настолько, чтобы сделать работу невыполнимой. Набить в неё слова будет на порядок дольше.

          Регулярками хорошо ключевые фразы из потока вылавливать. Для более сложных случаев они быстро тяжелеют.
            Опять издеваетесь над новичком?
            Emerald, приведи примеры того, что ты хочешь разбирать.
            0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
            0 пользователей:


            Рейтинг@Mail.ru
            [ Script execution time: 0,0181 ]   [ 16 queries used ]   [ Generated: 29.03.24, 09:55 GMT ]