Я хочу, чтобы заменить элементы в рекурсивном вложенном списке следующим образом:Замена элемента в рекурсивном вложенном списке питоне
["not", ["or",["not",["or",["not",["or",["P",["not", "Q"]]],"R"]],["and","P,"R"]]]
Я хочу, чтобы переместить «не» внутрь. Таким образом, в основном, «или« заменяется на »и«, »и« by »или«, »не« больше не должно быть в списке, кроме как с переменными, например [«not», «R»] в порядке но ["not", ["not", "P"]] должен быть просто P., пожалуйста, помогите мне. У меня большая часть кода готова, но я не могу заменить исходный массив, потому что я использую рекурсию, чтобы перейти к самому внутреннему элементу, и по мере того, как я двигаюсь наружу, я должен иметь возможность заменить самый неповторимый элемент на изменения, которые я не можем. Пожалуйста, помогите мне.
Покажите нам код пожалуйста. –
Ваш формат списка не имеет смысла. Элементы 'и' и 'or' должны иметь ровно два элемента для брака, элементы' not' должны иметь ровно один. В вашем списке есть «не» с двумя братьями и сестрами, а «или» - ни с чем. Вы также пропускаете двойную кавычку (похоже, после финальной «P»), но исправление этого не решит проблему с братом. – jedwards