Как решить логическое выражение, заданное в строковом формате, с помощью Python?

Я пытался решить логические выражения, указанные в строковом формате как ( ( i_0 & i_1 ) ^ i_2 ) ^ i_3

Используя пакет PyEDA, я могу преобразовать текст в выражение следующим образом:

      from pyeda.inter import *
be_text = "( ( i_0 & i_1 ) ^ i_2 ) ^ i_3"
be = expr(be_text) 

Количество переменных (i_0, i_1, i_2, ...) может доходить до 1000 секунд. Выполняемые операции - это базовые логические операции, а именно. И, ИЛИ, НЕ, XOR

Теперь, как я могу предоставить входные данные для этого выражения и решить его? Входные данные могут быть константой или массивом NumPy.

Правильно ли я все делаю, или PyEDA можно использовать только для преобразования текста в выражения?

Пожалуйста, помогите, если есть другой способ решить эту проблему.

Спасибо!

0 ответов

Другие вопросы по тегам