Я понял это - sendline () отправляет любые передаваемые ему аргументы и символ новой строки, но также не отправляет символ возврата каретки. Все, что мне нужно было сделать, это либо sendline (пароль + '\ r'), либо send (пароль + '\ r \ n').
Я предполагал (по-видимому, неправильно), что sendline добавит \ r AND \ n к строке, а не только к \ n. Пусть это будет уроком для кого-то еще, кто застрял на той же глупости.
Править: переписать...
Если Вы не заботитесь о дизайне, то можно с готовностью выбрать движок шаблонов наугад, или потому что Вам нравится его имя, или что бы то ни было. Если у Вас нет критериев выбора механизма, то, кто заботится, какой Вы выбираете?
С другой стороны, если Вы действительно заботитесь о дизайне, такой как в использовании шаблона разработки Образцового Контроллера представления (MVC), затем Ваш выбор быстро уменьшается.
Большинство ответов здесь подчеркивает питание различных движков шаблонов. Но смысл MVC - то, что Вы не хотите делать больше, потому что выполнение больше в Ваших шаблонах в конечном счете причинит Вам боль очень плохо. Бизнес-логика не принадлежит Представления, она принадлежит Модели. Управляющая логика принадлежит контроллера. Существует только один движок шаблонов, который на самом деле осуществляет шаблон MVC. Если Вы не требуете шаблона MVC (возможно, Вы перемещаетесь вне его), что один механизм все еще помогает Вам не причинить себе боль и поощряет Вас делить свою функциональность правильно.
Существует действительно только один хороший движок шаблонов: StringTemplate. См. http://www.cs.usfca.edu/~parrt/papers/mvc.templates.pdf для деталей почему.
Я использовал его на нескольких платформах (Python, Java, .NET), а также многие альтернативы и правила StringTemplate.
Решение сделано.Приятного отдыха.С наилучшими пожеланиями.
Другие упомянули строковый шаблон, но мы недавно переключились на MVEL (который также делает больше, но действительно не добавляет много веса): http://mvel.codehaus.org/ (и я нахожу легче использовать).
Не знайте, как легкий Вы рассмотрели бы это, но Скорость Apache является одним из самых известных механизмов шаблонной обработки для Java.
Это использовалось для создания сайта jGuru - это было вокруг некоторое время теперь.
Вы могли просто сделать форматирование путем, Вы делаете его и затем удаляете пустые строки путем замены выполнения больше чем одного '\n'
s с синглом '\n'
, например.
result = result.replaceAll("\n+", "\n");
Freemarker довольно хорош. Это легко, быстро, имеет условное форматирование и тонну других функций.