Получение вывода другой программы в качестве ввода на лету

У меня есть две программы, которые я использую таким образом:

$ c_program | python_program.py

c_program печатает что-то, используяprintf() и python_program.py читает, используяsys.stdin.readline()

Я хотел бы, чтобы python_program.py обрабатывал вывод c_program сразу же после печати, чтобы он мог печатать свой собственный текущий вывод. К сожалению, python_program.py получает свои данные только после завершения c_program.

Как я могу решить это?