TypeError: объект «Piecewise» не является итерируемымPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 TypeError: объект «Piecewise» не является итерируемым

Сообщение Anonymous »

Я пишу код с использованием Sympy на Python и пытаюсь выполнить некоторые вычисления для кортежей, но каждый раз, когда я пытаюсь использовать предыдущий результат в следующем результате, мне выдается ошибка: TypeError: объект 'Piecewise' не является итерируемым .
Код, который я использую до сих пор:

Код: Выделить всё

from eth_keys import keys
from sympy import symbols, Piecewise,Eq,summation,invert,Mod
import math
from Crypto.Util.number import inverse
x = symbols('x')
def math_func(k):

result = Piecewise(

((1,1), Eq(Mod(k,3),1)),#Mod(k,3) does k % 3
((1,2), Eq(Mod(k,3),2)),
((3,3), Eq(Mod(k,3),3)),  # No change if k % 3 == 0

)
#print(result.args)

result2 = Piecewise(

(sum(result), Eq(Mod(k,3),1)),
(sum(result), Eq(Mod(k,3),2)),
(sum(result), Eq(Mod(k,3),3)),  # No change if k % 3 == 0
# Default case to keep result unchanged
)
return result2

total = summation(math_func(x), (x, 2, 2))
print(total)
Когда я запускаю этот код, он выдает ошибку, о которой я говорил выше. Проблема в Eq(). он оценивает символ, и когда я выполняю print(result.args), он возвращает все строфы результата по частям. Попробуйте сами.
Мне нужно использовать свой код таким образом, потому что это единственный способ оценить символ, если я сделаю k %3 == число или Mod(k,3) == число, оно не работает, оно работает только для чисел.
Мне не нужны циклы. Может ли кто-нибудь показать мне, как исправить этот код?

Подробнее здесь: https://stackoverflow.com/questions/792 ... t-iterable
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»