У меня есть функция Python, например:
def test:
dict = call(name=1)
return dict
Я вызываю ее через Java, как показано ниже, и пытаюсь прочитать возвращаемый словарь:
try {
Process p = Runtime.getRuntime().exec("python");
BufferedReader in = new BufferedReader(new
InputStreamReader(p.getInputStream()));
String ret;
while ((ret = in.readLine()) != null) {
System.out.println("value is : " + ret);
}
} catch (
Exception e)
{
}
Проблема в том, call(name)
Функция печатает кучу журналов, которые идут вместе с моим результатом во входном потоке.Как я могу избежать этого и получить только результат?
Обратите внимание: 1. Отключение журналов не вариант 2. Я попытался отформатировать оператор return и затем проанализировать результат с помощью некоторого регулярного выражения из входного потока, но это кажется плохой идеей.