Вывод часто буферизуется для сохранения системных ресурсов. Это означает, что в этом случае система удерживает вывод Python до тех пор, пока не будет достаточно для совместного выпуска.
Чтобы преодолеть это, вы можете явно «очистить» вывод:
import sys, json
# simple JSON echo script
for line in sys.stdin:
print(json.dumps(json.loads(line)))
sys.stdout.flush() # <--- added line to flush output
Если вы используете Python 3.3 или выше, вы можете использовать:
import sys, json
# simple JSON echo script
for line in sys.stdin:
print(json.dumps(json.loads(line)), flush=True) # <--- added keyword