草庐IT

raise_linalgerror_singular

全部标签

'Try until no exception is raised' 的 Python 习语

我希望我的代码自动尝试多种方式来创建数据库连接。一旦一个工作,代码就需要继续(即它不应该再尝试其他方式)。如果它们都失败了,那么脚本就会爆炸。所以在-我认为是,但很可能不是-我尝试了这个天才之举:importpsycopg2fromgetpassimportgetpass#ouch,globalvariable,oohwell,it'sjustasimplescriptehCURSOR=Nonedefget_cursor():"""Createdatabaseconnectionandreturnstandardcursor."""globalCURSORifnotCURSOR:#tr

python - 使用 assert 与 raise Exception 的含义是什么

与以下有什么显着差异吗?raiseException("someexception")assertFalse,"someexception" 最佳答案 启动Python时,可以使用-O标志禁用断言。因此,仅将断言用于完整性检查,而不是用于检查程序逻辑的一部分。除此之外,当然还有断言引发AssertionError的区别,您真的不应该捕获它。当您引发异常时,您可以使异常类型适合于错误并稍后捕获它。 关于python-使用assert与raiseException的含义是什么,我们在Stac

python - asyncio 的 call_later raises 'generator' object is not callable with coroutine object

我有一些使用call_later使用Python3.4的asyncio制作的简单代码。代码应该打印,等待10秒,然后再次打印(但是在应该执行end()时引发TypeError,见下文):importasyncio@asyncio.coroutinedefbegin():print("Startingtowait.")asyncio.get_event_loop().call_later(10,end())@asyncio.coroutinedefend():print("completed")if__name__=="__main__":try:loop=asyncio.get_eve

python - 函数失败 : Raise Exception, 或返回 FALSE?什么是更好的方法?

我想知道你们是如何处理函数失败的。您是引发异常还是返回错误消息?例如我有一个应该连接到外部com对象的函数。如果com-object尚未通过另一个程序启动,则无法建立连接。通知主程序的首选python方式是什么?我应该使用详细的错误消息引发异常,还是应该简单地返回错误消息?谢谢! 最佳答案 python绝对是站在异常这一边的。我总能找到thisarticle成为一个很好的解释。 关于python-函数失败:RaiseException,或返回FALSE?什么是更好的方法?,我们在Stac

python - 请求——总是调用 raise_for_status

我想删除重复的x.raise_for_status()行:x=requests.get(url1)x.raise_for_status()y=requests.delete(url2)y.raise_for_status()z=requests.post(url3,data={'foo':'bar'})z.raise_for_status()如何自动调用raise_for_status()? 最佳答案 使用钩子(Hook)创建session:session=requests.Session()session.hooks={'resp

python - Pandas :带有 np.seterr(所有 ='raise')和缺失数据的 FloatingPointError

当我想查看涉及缺失数据的数据时,我收到了FloatingPointError。importnumpyasnpimportpandasaspdnp.seterr(all='raise')s=pd.Series([np.nan,np.nan,np.nan],index=[1,2,3]);print(s);print(s.head())我正在使用最新版本的pandas,通过安装condainstall-fpandas在pkillpython和condaremovepandas之后。这是回溯:Out[4]:--------------------------------------------

python - scipy.stats.multivariate_normal 提高 `LinAlgError: singular matrix` 即使我的协方差矩阵是可逆的

我在尝试使用scipy.stats.multivariate_normal时遇到问题,希望你们中的某个人能够提供帮助。我有一个2x2矩阵,可以找到使用numpy.linalg.inv()的逆矩阵,但是当我尝试将其用作multivariate_normal中的协方差矩阵时我收到LinAlgError声明它是一个奇异矩阵:In[89]:cov=np.array([[3.2e5**2,3.2e5*0.103*-0.459],[3.2e5*0.103*-0.459,0.103**2]])In[90]:np.linalg.inv(cov)Out[90]:array([[1.23722158e-1

python - NumPy 错误 : Singular matrix

错误Numpyerror:Matrixissingular具体是什么意思(使用linalg.solve函数时)?我在Google上查看过,但找不到任何可以说明此错误发生时间的信息。 最佳答案 奇异矩阵是不可逆的。这意味着您要求解的方程组没有唯一解;linalg.solve无法处理这个问题。您可能会发现linalg.lstsq提供了一个可用的解决方案。 关于python-NumPy错误:Singularmatrix,我们在StackOverflow上找到一个类似的问题:

python - 为什么 Pylint 在此 raise 语句中给出错误 E0702,引发 NoneType?

假设我有以下代码。deffoo():foobar=NoneiffoobarisnotNone:raisefoobar当我通过pylint运行此代码时,出现以下错误:E0702:4:foo:RaisingNoneTypewhileonlyclasses,instancesorstringareallowed这是pylint中的错误吗?我的pylint太旧了吗?pylint0.18.0,astng0.19.1,common0.45.0Python2.5.1(r251:54863,Aug252008,09:23:26)注意:我知道这段代码没有任何意义,它被提炼到最基本的部分以暴露手头的问题,

没有参数的 Python 'raise' : what is "the last exception that was active in the current scope"?

Python的文档说:Ifnoexpressionsarepresent,raisere-raisesthelastexceptionthatwasactiveinthecurrentscope.(Python3:https://docs.python.org/3/reference/simple_stmts.html#raise;Python2.7:https://docs.python.org/2.7/reference/simple_stmts.html#raise。)但是,“最后激活”的概念似乎已经改变。见证以下代码示例:#from__future__importprint_f