首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >当限制不存在时处理错误

当限制不存在时处理错误
EN

Stack Overflow用户
提问于 2018-04-17 19:53:12
回答 1查看 237关注 0票数 0

在制定一个限制时,我一直对SymPy有一个问题,这个限制必须回答“不存在”是返回无限值。代码部分如下:

代码语言:javascript
运行
复制
x = Symbol ('x')
a = Limit ((5-x) / (x-2), x, 2, "+"). doit ()
print (a)
oo
b = Limit ((5-x) / (x-2), x, 2, "-"). doit ()
print (b)
-oo
c = Limit ((5-x) / (x-2), x, 2) .doit ()
print (c)
oo 

下面是所调查的问题,由于限制不存在,所以check应该留下一条消息,或者返回任何等于0的值。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-17 21:35:38

默认情况下,Limit ((5-x) / (x-2), x, 2)意味着右侧的单边限制,因此在您的示例中,c始终与a相同。

在GitHub上的当前开发版本中,可以通过"+-"作为方向,这将计算两种限制,如果两者不相同,就会提高ValueError:

代码语言:javascript
运行
复制
>>> limit((5-x) / (x-2), x, 2, "+-")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/ubuntu/sympy/sympy/series/limits.py", line 66, in limit
    % (llim, rlim))
ValueError: The limit does not exist since left hand limit = -oo and right hand limit = oo

但你可能只是想要一个条件像

代码语言:javascript
运行
复制
if a != b: 
    print("One-sided limits are different")
elif a.is_infinite:
    print("Infinite limit")
# and so on
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49886409

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档