Я программирую код Python, в котором я использую JSONObjects для связи с приложением Java.Моя проблема заключается в том, что я хочу изменить значение в JSONObject (в этом примере он называется py_json), и размерность этого JSONObject не фиксирована, а известна.varName [x] является входом метода, а длина varName является измерением / размером JSONObjects.
Код будет работать так, но я не могу скопировать и вставить код 100 раз, чтобыуверен, что нет больших JSONObjects.
if length == 1:
py_json[VarName[0]] = newValue
elif length == 2:
py_json[VarName[0]][VarName[1]] = newValue
elif length == 3:
py_json[VarName[0]][VarName[1]][VarName[2]] = newValue
В КИ это можно решить с помощью таких указателей:
int *pointer = NULL;
pointer = &py_json;
for (i=0; i<length; i++){
pointer = &(*pointer[VarName[i]]);
}
*pointer = varValue;
Но в питоне нет указателей.Вы знаете способ иметь динамическое решение в Python?