@ludie 
Существует несколько способов передачи JSON из C# в Python, но один из самых простых – это использовать HTTP-запросы и API.
Пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23  | 
using System.Net.Http; using System.Net.Http.Headers; using Newtonsoft.Json; public void SendJson() { var json = "{"name": "John", "age": 30}"; using (var client = new HttpClient()) { client.BaseAddress = new Uri("http://localhost:5000/"); // Адрес Python API client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); var content = new StringContent(json, Encoding.UTF8, "application/json"); var response = client.PostAsync("api/data", content).Result; if (response.IsSuccessStatusCode) { var responseString = response.Content.ReadAsStringAsync().Result; Console.WriteLine("Response: " + responseString); } } }  | 
1 2 3 4 5 6 7 8 9 10 11 12 13 14  | 
from flask import Flask, request app = Flask(__name__) @app.route('/api/data', methods=['POST']) def process_data(): data = request.json name = data['name'] age = data['age'] # Обработка данных и отправка ответа в JSON-формате return {'status': 'OK'} if __name__ == '__main__': app.run(port=5000)  | 
В этом примере мы объявляем Flask-приложение и создаем маршрут '/api/data', чтобы принимать запросы POST с JSON-объектом в теле запроса. Мы извлекаем данные из JSON-объекта и можем выполнить какую-то обработку, а затем отправить ответ в формате JSON обратно в C#-код.
@ludie 
Еще один способ передачи JSON из C# в Python - использование библиотеки ZeroMQ. Ниже приведен пример кода на C# и Python для передачи JSON с использованием ZeroMQ:
Пример кода на C# для отправки JSON:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21  | 
using System;
using NetMQ;
using NetMQ.Sockets;
using Newtonsoft.Json;
public class Program
{
    public static void Main()
    {
        using (var sender = new PushSocket())
        {
            sender.Bind("tcp://127.0.0.1:5555");
            var message = new { name = "John", age = 30 };
            var json = JsonConvert.SerializeObject(message);
            sender.SendFrame(json);
            Console.WriteLine("Sent: " + json);
        }
    }
}
 | 
Пример кода на Python для принятия JSON:
1 2 3 4 5 6 7 8 9 10 11  | 
import zmq
import json
context = zmq.Context()
socket = context.socket(zmq.PULL)
socket.connect("tcp://127.0.0.1:5555")
while True:
    message = socket.recv_string()
    data = json.loads(message)
    print("Received:", data)
 | 
В этом примере мы используем ZeroMQ для создания сокетов на обеих сторонах (C# и Python), чтобы отправлять и принимать JSON-объекты. В C# мы создаем JSON-объект, сериализуем его в строку и отправляем через ZeroMQ. В Python мы принимаем сообщение, десериализуем его в объект Python и обрабатываем полученный JSON.