No se puede iniciar el programa interactivo mientras se pasa a la secuencia de comandos en Python

Tengo un script de Python que necesita llamar al @ defini$EDITOR o$VISUAL. Cuando el script de Python se llama solo, puedo iniciar el$EDITOR sin problemas, pero en el momento en que canalizo algo al script de Python, el$EDITOR no se puede iniciar. En este momento, estoy usando nano que muestra

SIGHUP o SIGTERM recibidos

cada vez. Parece ser el mismo problemadescrito aquí.

sinister:Programming [1313]$ echo "import os;os.system('nano')" > "sample.py" 
sinister:Programming [1314]$ python sample.py
# nano is successfully launched here.
sinister:Programming [1315]$ echo "It dies here." | python sample.py 
Received SIGHUP or SIGTERM

Buffer written to nano.save.1

EDIT: aclaración; dentro del programa, no estoy canalizando al editor. El código es el siguiente

editorprocess = subprocess.Popen([editor or "vi", temppath])
editorreturncode = os.waitpid(editorprocess.pid, 0)[1]

Respuestas a la pregunta(2)

Su respuesta a la pregunta