Этот полезный вопрос SO описывает несколько возможных способов блокировки файла в Python, но многие ответы указывают на сложность надежного выполнения этого (есть много, что может пойти не так).
Я бы посоветовал использовать хранилище в памяти (например, Redis) или базу данных, с которой каждый из ваших процессов мог бы общаться.Еще одна альтернатива состоит в том, чтобы иметь еще один процесс, который контролирует операции чтения и записи, и с которыми взаимодействуют другие процессы, но выполнение этого является довольно трудоемким процессом, и, в конце концов, в конечном итоге представляет собой сервер базы данных.
Это кажется мне ситуацией, когда вы должны просто использовать правильный инструмент для работы (база данных).