Pregunta

Estoy pensando en empezar a utilizar Pexpect. En Pexpects página de inicio Encuentro esto:

  

Q: ¿Por qué no usar simplemente esperar?

     

A: amor I   eso. Es genial. Yo me ha rescatado de   algunos atascos reales, pero yo quería algo   que haría el 90% de lo que necesito de   Esperar; ser 10% del tamaño; y permitir   mí escribir mi código en Python vez   de TCL. Pexpect no es tan grande   como se esperaba, pero hace todo Pexpect   Yo he utilizado siempre esperan para.

Hay una diferencia del 10% entre Pexpect y esperan. Así que mi pregunta es ¿cuál es la diferencia del 10%. Qué es lo que puede esperar puede hacer eso Pexpect no puede.

¿Fue útil?

Solución

Esa pregunta ( " ¿Qué es lo que puede esperar puede hacer que Pexpect puede no ") es un poco engañoso. No es que Pexpect no puede hacer las cosas que pueden esperar, es; es que esperan que tiene una gran cantidad de apoyo extra para hacer este tipo de programación más fácil.

A modo de ejemplo, tomar el comando interactúan que permite al usuario interactuar directamente con el proceso generado. En Pexpect, eso es todo lo hace interactúan. (Y eso puede ser suficiente para sus necesidades, como usted dice.) Por el contrario, de Interact tiene soporte para la detección de patrones durante una interactúan, enganchando juntos múltiples procesos generados, etc. Por supuesto esperar, puede hacer todo esto mediante la codificación de usted mismo. Sin embargo, su código será más largo - a veces mucho más tiempo, ya que tendrá esencialmente tiene que volver a escribir su propio interactúan, que tendrá que depurar, etc. De hecho, puede haber encontrado ya estas situaciones, pero no se dio cuenta de lo mucho más simple sea el equivalente esperan código sería.

Por supuesto, el apoyo adicional puede ser más que compensado por su preferencia para Python. :-P

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top