Estoy ejecutando una secuencia de comandos python2.5 en un servidor de Windows 2003 como un servicio. Estoy consiguiendo este error para statments impresión simples:¿por qué recibo IOError: (9, 'Descriptor de archivos incorrectos') error al hacer las declaraciones de impresión?
IOError: (9, 'Bad file descriptor')
He eliminado todas las declaraciones de impresión, ya que sólo se utilizan con fines de desarrollo, pero no estoy seguro de por qué una sentencia de impresión me causaría ningún Greif. Ejecuté el mismo script no como un servicio sin ningún problema importante. ¿Me pregunto si alguien más tiene alguna idea?
Más específicamente, la primera tres descriptores de archivos (correspondientes a stdin, stdout y stderr) no están disponibles si su programa no se ejecuta en una consola. –
+1 Ignacio Vazquez-Abrams, muy útil. – Wolph
Otra forma de ignorar silenciosamente todas las declaraciones de impresión 'sys.stdout = open (os.devnull, 'w')' –