本文整理匯總了Python中sympy.core.relational.Relational.__new__方法的典型用法代碼示例。如果您正苦於以下問題:Python Relational.__new__方法的具體用法?Python Relational.__new__怎麽用?Python Relational.__new__使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類sympy.core.relational.Relational
的用法示例。
在下文中一共展示了Relational.__new__方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: __new__
# 需要導入模塊: from sympy.core.relational import Relational [as 別名]
# 或者: from sympy.core.relational.Relational import __new__ [as 別名]
def __new__(cls, lhs, rhs=0, **assumptions):
from sympy.matrices.expressions.matexpr import (
MatrixElement, MatrixSymbol)
from sympy.tensor.indexed import Indexed
lhs = _sympify(lhs)
rhs = _sympify(rhs)
# Tuple of things that can be on the lhs of an assignment
assignable = (Symbol, MatrixSymbol, MatrixElement, Indexed)
if not isinstance(lhs, assignable):
raise TypeError("Cannot assign to lhs of type %s." % type(lhs))
# Indexed types implement shape, but don't define it until later. This
# causes issues in assignment validation. For now, matrices are defined
# as anything with a shape that is not an Indexed
lhs_is_mat = hasattr(lhs, 'shape') and not isinstance(lhs, Indexed)
rhs_is_mat = hasattr(rhs, 'shape') and not isinstance(rhs, Indexed)
# If lhs and rhs have same structure, then this assignment is ok
if lhs_is_mat:
if not rhs_is_mat:
raise ValueError("Cannot assign a scalar to a matrix.")
elif lhs.shape != rhs.shape:
raise ValueError("Dimensions of lhs and rhs don't align.")
elif rhs_is_mat and not lhs_is_mat:
raise ValueError("Cannot assign a matrix to a scalar.")
return Relational.__new__(cls, lhs, rhs, **assumptions)
示例2: __new__
# 需要導入模塊: from sympy.core.relational import Relational [as 別名]
# 或者: from sympy.core.relational.Relational import __new__ [as 別名]
def __new__(cls, lhs, rhs=0, **options):
lhs = _sympify(lhs)
rhs = _sympify(rhs)
return Relational.__new__(cls, lhs, rhs, **options)