为了账号安全,请及时绑定邮箱和手机立即绑定

为什么 python 不退出脚本?

为什么 python 不退出脚本?

梦里花落0921 2023-07-18 13:31:09
我有以下简单的 python 程序来使用二分法求方程根:from numpy import exp#def fun(x):  return 5.0+4.0*x-exp(x)#a=3b=10.0eps=1.0e-15#fa=fun(a)fb=fun(b)#if fa*fb>0:  print("wrong interval!!!",fa,fb)  exit()#iter=1while (b-a)>eps:  c=(a+b)/2.0  fc=fun(c)  if fc==0:    print("x = ",c)    exit()  if fc*fa>0:    a=c    fa=fc  else:    b=c    fb=fc  iter+=1#print("x = ",c)print("accuracy = ",'{:.2e}'.format(b-a))print("f(",c,") =",fun(c))print(iter," iterations needed")如果我将 a 放入错误的间隔(例如 a=3),它会说这是错误的间隔,但无论如何它都会继续给出(显然)错误的结果和四行错误:root:别名无效:名称 less 不能使用别名,因为它是另一个魔术命令。而且,内核死掉了(我使用的是 jupyter)。你能帮助我吗?
查看完整描述

2 回答

?
撒科打诨

TA贡献1934条经验 获得超2个赞

你应该使用sys.exit("optional custom message")而不是仅仅exit()


这引发了一个SystemExit异常,而这只exit()在解释器的上下文中才有意义。


import sys

# logic here

if "something bad":

    sys.exit("optional custom message")

查看完整回答
反对 回复 2023-07-18
?
交互式爱情

TA贡献1712条经验 获得超3个赞

这可能是因为您需要在 if 语句完成后添加 else 语句来说明如果为 false 则执行此操作,否则执行其余代码。



查看完整回答
反对 回复 2023-07-18
  • 2 回答
  • 0 关注
  • 103 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信